| | |
some help please. (still learning)
![]() |
•
•
Join Date: Oct 2009
Posts: 11
Reputation:
Solved Threads: 0
here's what i currently got
here is the assignment
im creating a program that will use my data and organize it in a way that allow user to input something and come up with the answer. i know that i need to make a dictionary list but im not sure how. can i just get some input of where to go and some help
Python Syntax (Toggle Plain Text)
# Reading the .csv file energyFile = open("EnergySources.csv","r") stateDict = {} for line in energyFile: line = line.strip() fields = line.split(",") if fields[0] == "State" or fields[0] == "": continue state = fields[0] total = fields[-1] float(''.join(total)) coal = fields[1] float(''.join(coal)) naturalgas = fields[2] float(''.join(naturalgas)) petroleum = fields[3] float(''.join(petroleum)) nuclear = fields[4] float(''.join(nuclear)) hydroelectric = fields[5] float(''.join(hydroelectric)) biomass = fields[6] float(''.join(biomass)) geothermal = fields[7] float(''.join(geothermal)) interstate = fields[8] float(''.join(interstate)) other = fields[9] float(''.join(other)) for i in range(10): state1=state[i] while True: answer= raw_input("Pick a state") if answer == "": break if answer in stateDict: dataList=state1 state=dataList[0] print state else: print "Not valid" energyFile.close() j
here is the assignment
Python Syntax (Toggle Plain Text)
In this project we will do a data analysis and visualization project, producing maps like the one in the picture above. The map shows millions of BTUs of energy per capits produced by coal in each state in 2007. Why the heck do they burn so much coal in Wyoming? The data comes from two Web sites. The Energy Information Administration is a Federal agency that keeps statistics on energy. The file we're using comes from their overview page. To correct for the populations of the different states, we'll also use the list of state populations from Wikipedia. Finally, we'll actually make the map using IBM's Many Eyes visualization service. This cool Web site lets up upload a table of data, and then choose different ways of visualizing it. The two files we are using are: EnergySources.csv StatePopulations.txt We've taken a preliminary look at both files in class. You do not need to hand in these two files, the TAs will have them when they grade the programs. Your program should read the data from the two files, and write out a third file, sources.tsv, which you should upload to Many Eyes to make the visualization. Working in Pairs You may do this program with a partner. Both you and your partner should hand in the same program. Your partner may be in a different section. Be sure that your program identifies BOTH partners at the top of the file, by name and student ID number. You may do the program by yourself if you want. If you work with a partner, you should get together, sit down, and work at the same computer. That way you'll both learn the things you'll need to know to pass the tests. If you let your partner do all the work, you will end up failing the midterm (and, probably, your partner will be very annoyed). Steps in the Project We'll do this project in eight steps. After the first four, you'll have a program that is partially working, and you will hand that in on Tues, Nov. 3. On Tues. Nov 10, the whole program, together with your map, will be due. We will only grade the whole program, but if you failed to hand in the partial program, it will cost you points, and if you hand in the partial but not the final program, you can get some partial credit. The basic structure of the program is the two-loop "build a data structure and do something with it" structure we have been considering in the last two lectures. In these steps, I recommend that you print things out as you go along; none of this printing should appear in the final program, but it will help you figure out whether you have the pieces working as you go along. Step 1: Read in the energy data. Open the file EnergySources.csv, read through it using a for loop (see the example from the 10/26 lecture on the lectures and readings page), print out each line, and then close it. Step 2: Break each line up and print out first the name of the state, and then each energy source with labels, for instance: Alabama: Coal, 888.4; Natuarl Gas, 431.4; ... Convert the numbers to floating point before printing them out. Step 3: Modify your program so that instead of printing out the data it puts it into a dictionary. Use the name of the state as the key, and for the data, have a list containing all the sources of energy, and the total. Have your program print out the dictionary, and check it. Step 4: Write a loop that lets the user ask questions. Offer the user this menu: Pick an energy source: 1: Coal 2: Natural gas 3: Petroleum 4: Nuclear 5: Hydroelectric 6: Biomass 7: Geothermal 8: Interstate imports Then have them enter the name of a state. In both cases, the program should loop until the user gives a good input. Step 4: Answer the user's question by looking up the item in the dictionary. Find the list for the requested state, and then the right item in the list.
Python Syntax (Toggle Plain Text)
http://www.cs.ucdavis.edu/~amenta/f09/StatePopulations.txt http://www.cs.ucdavis.edu/~amenta/f09/ecs10.html
im creating a program that will use my data and organize it in a way that allow user to input something and come up with the answer. i know that i need to make a dictionary list but im not sure how. can i just get some input of where to go and some help
•
•
Join Date: Dec 2006
Posts: 1,008
Reputation:
Solved Threads: 285
0
#2 24 Days Ago
Start with something like this (Not Tested). And for future reference, you will not find many people who will go through a problem with 45 lines to read. State one or two specific problems and you will get better responses.
Python Syntax (Toggle Plain Text)
energyFile = open("EnergySources.csv","r") state_dict = {} for line in energyFile: line = line.strip() fields = line.split(",") state = fields[0].strip() if state == "State": ## you didn't give us any idea where state name comes from state_name = fields[???] state_dict[state_name] = fields[1:] elif not len(state): print "this rec has no state", line else: print 'not a "State" record', line answer = "" while answer not in state_dict: answer= raw_input("Pick a state") if answer in state_dict: data_list=state_dict[answer] print answer, data_list print " total is %9.2f" % float(data_list[-1]) else: print "Not valid"
Last edited by woooee; 24 Days Ago at 11:49 am.
Linux counter #99383
![]() |
Similar Threads
- e-Learning (Growing an Online Community)
- learning php (PHP)
- recommendations for JavaScript learning resources? (JavaScript / DHTML / AJAX)
- Developing, building, and testing. How do it the best? Learning from the world leader (C)
- Learning Linux (Getting Started and Choosing a Distro)
- c++ learning advice (C++)
Other Threads in the Python Forum
- Previous Thread: Finding patterns with new elements
- Next Thread: Pygame question
| Thread Tools | Search this Thread |
abrupt alarm ansi anti approximation assignment avogadro backend beginner binary bluetooth calculator character cmd code customdialog cx-freeze data decimals dictionaries dictionary directory dynamic error examples exe file float format function gnu graphics gui halp heads homework http ideas import input java launcher leftmouse line linux list lists loop module mouse number numbers output parsing path pointer port prime programming progressbar projects push py2exe pygame pyglet pyqt python random recursion schedule screensaverloopinactive script scrolledtext sqlite statistics string strings sudokusolver sum table terminal text thread threading time tlapse tricks tuple tutorial twoup ubuntu unicode urllib urllib2 variable ventrilo wikipedia write wxpython xlib






