Re: Extracting and summing student scores from a JSON file using Python 2.7.10
On Monday, 9 November 2015 18:53:06 UTC-5, Bernie Lazlo wrote: > This should be a simple problem but I have wasted hours on it. Any help would > be appreciated. [I have taken my code back to almost the very beginning.] > > The student scores need to be summed. > > import json > import urllib > url = "http://www.wickson.net/geography_assignment.json"; > response = urllib.urlopen(url) > data = json.loads(response.read()) > lst1 = list(data.items()) > print lst1 Pete, thanks for the input. Sometimes it just takes a suggestion to break past the "brick wall". -- https://mail.python.org/mailman/listinfo/python-list
Re: Extracting and summing student scores from a JSON file using Python 2.7.10
On Monday, 9 November 2015 22:54:05 UTC-5, wayne@gmail.com wrote: > On Monday, 9 November 2015 22:27:40 UTC-5, Denis McMahon wrote: > > On Mon, 09 Nov 2015 15:52:45 -0800, Bernie Lazlo wrote: > > > > > This should be a simple problem but I have wasted hours on it. Any help > > > would be appreciated. [I have taken my code back to almost the very > > > beginning.] > > > > > > The student scores need to be summed. > > > > > > import json import urllib url = > > > "http://www.wickson.net/geography_assignment.json"; > > > response = urllib.urlopen(url) > > > data = json.loads(response.read()) > > > lst1 = list(data.items()) > > > print lst1 > > > > I find that pprint.pprint is useful for looking at data structures. > > > > Having looked at the data, and then using appropriate substitutions for > > and in the following: > > > > sumscore = 0 > > students = 0 > > > > for dic in : > > sumscore = sumscore + dic[] > > students += 1 > > > > print 'Sum of', students, 'scores is', sumscore > > print 'Average of', students, 'scores is', sumscore / students > > > > It was trivial to generate: > > > > Sum of 50 scores is 3028 > > Average of 50 scores is 60 > > > > -- > > Denis McMahon > = Thanks for the reply, Denis. I hope this comes as easily to me some day. :-) -- https://mail.python.org/mailman/listinfo/python-list
Re: Extracting and summing student scores from a JSON file using Python 2.7.10
On 10/11/15 08:12, Bernie Lazlo wrote: > > import json > >import urllib > >url ="http://www.wickson.net/geography_assignment.json"; > >response = urllib.urlopen(url) > >data = json.loads(response.read()) All good up to data. Now: # make a list of scores scores = [d['score'] for d in data['comments'] if isinstance(d['score'], int) ] # analysis total_scores = sum(scores) average_score= total_scores/float(len(scores)) min_score, max_score = min(scores), max(scores) pd -- https://mail.python.org/mailman/listinfo/python-list
Re: Extracting and summing student scores from a JSON file using Python 2.7.10
On Monday, 9 November 2015 22:27:40 UTC-5, Denis McMahon wrote: > On Mon, 09 Nov 2015 15:52:45 -0800, Bernie Lazlo wrote: > > > This should be a simple problem but I have wasted hours on it. Any help > > would be appreciated. [I have taken my code back to almost the very > > beginning.] > > > > The student scores need to be summed. > > > > import json import urllib url = > > "http://www.wickson.net/geography_assignment.json"; > > response = urllib.urlopen(url) > > data = json.loads(response.read()) > > lst1 = list(data.items()) > > print lst1 > > I find that pprint.pprint is useful for looking at data structures. > > Having looked at the data, and then using appropriate substitutions for > and in the following: > > sumscore = 0 > students = 0 > > for dic in : > sumscore = sumscore + dic[] > students += 1 > > print 'Sum of', students, 'scores is', sumscore > print 'Average of', students, 'scores is', sumscore / students > > It was trivial to generate: > > Sum of 50 scores is 3028 > Average of 50 scores is 60 > > -- > Denis McMahon = Thanks for the reply, Denis. I hope this comes as easily to me some day. :-) -- https://mail.python.org/mailman/listinfo/python-list
Re: Extracting and summing student scores from a JSON file using Python 2.7.10
On Mon, 09 Nov 2015 15:52:45 -0800, Bernie Lazlo wrote: > This should be a simple problem but I have wasted hours on it. Any help > would be appreciated. [I have taken my code back to almost the very > beginning.] > > The student scores need to be summed. > > import json import urllib url = > "http://www.wickson.net/geography_assignment.json"; > response = urllib.urlopen(url) > data = json.loads(response.read()) > lst1 = list(data.items()) > print lst1 I find that pprint.pprint is useful for looking at data structures. Having looked at the data, and then using appropriate substitutions for and in the following: sumscore = 0 students = 0 for dic in : sumscore = sumscore + dic[] students += 1 print 'Sum of', students, 'scores is', sumscore print 'Average of', students, 'scores is', sumscore / students It was trivial to generate: Sum of 50 scores is 3028 Average of 50 scores is 60 -- Denis McMahon, denismfmcma...@gmail.com -- https://mail.python.org/mailman/listinfo/python-list
Re: Extracting and summing student scores from a JSON file using Python 2.7.10
On Monday, 9 November 2015 18:53:06 UTC-5, Bernie Lazlo wrote: > This should be a simple problem but I have wasted hours on it. Any help would > be appreciated. [I have taken my code back to almost the very beginning.] > > The student scores need to be summed. > > import json > import urllib > url = "http://www.wickson.net/geography_assignment.json"; > response = urllib.urlopen(url) > data = json.loads(response.read()) > lst1 = list(data.items()) > print lst1 == Many thanks, MRAB! :-) -- https://mail.python.org/mailman/listinfo/python-list
Re: Extracting and summing student scores from a JSON file using Python 2.7.10
On 2015-11-10 01:53, Bernie Lazlo wrote: On Monday, 9 November 2015 20:31:52 UTC-5, MRAB wrote: On 2015-11-10 01:12, Bernie Lazlo wrote: > On Monday, 9 November 2015 19:30:23 UTC-5, MRAB wrote: >> On 2015-11-09 23:52, Bernie Lazlo wrote: >> > This should be a simple problem but I have wasted hours on it. Any help would be appreciated. [I have taken my code back to almost the very beginning.] >> > >> > The student scores need to be summed. >> > >> > import json >> > import urllib >> > url = "http://www.wickson.net/geography_assignment.json"; >> > response = urllib.urlopen(url) >> > data = json.loads(response.read()) >> > lst1 = list(data.items()) >> > print lst1 >> > >> Do it a step at a time. >> >> It's a list, so start with indexing. > > MRAB: > > I think of the file as two lists. The second list appears to be a list of tuples containing "names" and "scores". How would you index or extract those. > Right, so lst1[1] gets you closer to what you want. Further indexing will get you even closer. === lst2 = lst1[1] removes first line of instructions printing lst2[1:2] produces essentially the list of students and scores ?? ([{u'student ': u'Hannah', u'score': 77}, {u'student ': u'Emily', u'score': 57}, {u'student ': u'Olivia', u'score': 80}, {u'student ': u'Nora', u'score': 70}, lst1 is 1 list of 2 items, both of which are tuples. lst1[1] gives you the second tuple. That tuple contains 2 items, the first a string and the second a list. You want the second item, so that's lst1[1][1]. Each of the items in that list is a dict. -- https://mail.python.org/mailman/listinfo/python-list
Re: Extracting and summing student scores from a JSON file using Python 2.7.10
On Monday, 9 November 2015 20:31:52 UTC-5, MRAB wrote: > On 2015-11-10 01:12, Bernie Lazlo wrote: > > On Monday, 9 November 2015 19:30:23 UTC-5, MRAB wrote: > >> On 2015-11-09 23:52, Bernie Lazlo wrote: > >> > This should be a simple problem but I have wasted hours on it. Any help > >> > would be appreciated. [I have taken my code back to almost the very > >> > beginning.] > >> > > >> > The student scores need to be summed. > >> > > >> > import json > >> > import urllib > >> > url = "http://www.wickson.net/geography_assignment.json"; > >> > response = urllib.urlopen(url) > >> > data = json.loads(response.read()) > >> > lst1 = list(data.items()) > >> > print lst1 > >> > > >> Do it a step at a time. > >> > >> It's a list, so start with indexing. > > > > MRAB: > > > > I think of the file as two lists. The second list appears to be a list of > > tuples containing "names" and "scores". How would you index or extract > > those. > > > Right, so lst1[1] gets you closer to what you want. > > Further indexing will get you even closer. === lst2 = lst1[1] removes first line of instructions printing lst2[1:2] produces essentially the list of students and scores ?? ([{u'student ': u'Hannah', u'score': 77}, {u'student ': u'Emily', u'score': 57}, {u'student ': u'Olivia', u'score': 80}, {u'student ': u'Nora', u'score': 70}, -- https://mail.python.org/mailman/listinfo/python-list
Re: Extracting and summing student scores from a JSON file using Python 2.7.10
On 2015-11-10 01:12, Bernie Lazlo wrote: On Monday, 9 November 2015 19:30:23 UTC-5, MRAB wrote: On 2015-11-09 23:52, Bernie Lazlo wrote: > This should be a simple problem but I have wasted hours on it. Any help would be appreciated. [I have taken my code back to almost the very beginning.] > > The student scores need to be summed. > > import json > import urllib > url = "http://www.wickson.net/geography_assignment.json"; > response = urllib.urlopen(url) > data = json.loads(response.read()) > lst1 = list(data.items()) > print lst1 > Do it a step at a time. It's a list, so start with indexing. MRAB: I think of the file as two lists. The second list appears to be a list of tuples containing "names" and "scores". How would you index or extract those. Right, so lst1[1] gets you closer to what you want. Further indexing will get you even closer. -- https://mail.python.org/mailman/listinfo/python-list
Re: Extracting and summing student scores from a JSON file using Python 2.7.10
On Monday, 9 November 2015 19:30:23 UTC-5, MRAB wrote: > On 2015-11-09 23:52, Bernie Lazlo wrote: > > This should be a simple problem but I have wasted hours on it. Any help > > would be appreciated. [I have taken my code back to almost the very > > beginning.] > > > > The student scores need to be summed. > > > > import json > > import urllib > > url = "http://www.wickson.net/geography_assignment.json"; > > response = urllib.urlopen(url) > > data = json.loads(response.read()) > > lst1 = list(data.items()) > > print lst1 > > > Do it a step at a time. > > It's a list, so start with indexing. MRAB: I think of the file as two lists. The second list appears to be a list of tuples containing "names" and "scores". How would you index or extract those. -- https://mail.python.org/mailman/listinfo/python-list
Re: Extracting and summing student scores from a JSON file using Python 2.7.10
On 2015-11-09 23:52, Bernie Lazlo wrote: This should be a simple problem but I have wasted hours on it. Any help would be appreciated. [I have taken my code back to almost the very beginning.] The student scores need to be summed. import json import urllib url = "http://www.wickson.net/geography_assignment.json"; response = urllib.urlopen(url) data = json.loads(response.read()) lst1 = list(data.items()) print lst1 Do it a step at a time. It's a list, so start with indexing. -- https://mail.python.org/mailman/listinfo/python-list
Extracting and summing student scores from a JSON file using Python 2.7.10
This should be a simple problem but I have wasted hours on it. Any help would be appreciated. [I have taken my code back to almost the very beginning.] The student scores need to be summed. import json import urllib url = "http://www.wickson.net/geography_assignment.json"; response = urllib.urlopen(url) data = json.loads(response.read()) lst1 = list(data.items()) print lst1 -- https://mail.python.org/mailman/listinfo/python-list