私はマージで何か問題があり、それが何であるか理解できません。私は、整数値の一連のヒストグラムを推定するために次のことをやった:パンダ:マージのしくみの理解
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"})
私はhist
とfreq
を印刷する場合、これは私が得るものです:
> 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
彼らは両方"series"
でインデックス化していますしかし、私がマージしようとすると:
> df = pnd.merge(freq, hist, on = "series")
私はKeyError: 'no item named series'
例外が発生します。 on = "series"
を省略すると、IndexError: list index out of range
の例外が発生します。
私が間違っていることはありません。 "シリーズ"はインデックスであり、列ではないので、私はそれを違うようにする必要がありますか?
マージするdocstringを改善する時間! –
@WesMcKinney:Nice :) – Avaris