Tôi đang làm điều gì đó sai trái khi hợp nhất và tôi không thể hiểu nó là gì. Tôi đã thực hiện những điều sau đây để ước lượng một biểu đồ của một loạt các giá trị số nguyên:Pandas: gặp khó khăn khi hiểu cách hợp nhất hoạt động
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"})
Nếu tôi in hist
và freq
đây là những gì tôi nhận được:
> 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
Họ đang cả hai lập chỉ mục bởi "series"
nhưng nếu tôi cố gắng hợp nhất:
> df = pnd.merge(freq, hist, on = "series")
Tôi nhận được một ngoại lệ KeyError: 'no item named series'
. Nếu tôi bỏ qua on = "series"
Tôi nhận được một ngoại lệ IndexError: list index out of range
.
Tôi không hiểu mình đang làm gì sai. Có thể là "chuỗi" là một chỉ mục chứ không phải một cột vì vậy tôi phải làm điều đó một cách khác nhau?
Thời gian để cải thiện chuỗi kết hợp! –
@WesMcKinney: Nice :) – Avaris