KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm doing something wrong with merge and I can't understand what it is. I've done the following to estimate a histogram of a series of integer values: import pandas as pnd import numpy as np series = pnd.Series(np.random.poisson(5, size = 100)) tmp = {"series" : series, "count" : np.ones(len(series))} hist = pnd.DataFrame(tmp).groupby("series").sum() freq = (hist / hist.sum()).rename(columns = {"count" : "freq"}) If I print hist and freq this is what I get: > print hist count series 0 2 1 4 2 13 3 15 4 12 5 16 6 18 7 7 8 8 9 3 10 1 11 1 > print freq freq series 0 0.02 1 0.04 2 0.13 3 0.15 4 0.12 5 0.16 6 0.18 7 0.07 8 0.08 9 0.03 10 0.01 11 0.01 They're both indexed by "series" but if I try to merge: > df = pnd.merge(freq, hist, on = "series") I get a KeyError: 'no item named series' exception. If I omit on = "series" I get a IndexError: list index out of range exception. I don't get what I'm doing wrong. May be "series" is an index and not a column so I must do it differently?
Tags (comma-separated)
Save Edits
Cancel