Python 如何对数据帧进行子采样?
我有Python 如何对数据帧进行子采样?,python,pandas,Python,Pandas,我有dfi=(I是索引) 和dfj=(j是索引) 我想在dfj中添加一个a列,这样输出将是dfi的二次抽样因子2 j b a 0 0 0 1 1 2 2 2 4 3 3 6 4 4 8 我的尝试: idx = pd.IndexSlice dfj["a"] = dfi.loc[idx[::2]] 这会失败,因为dfi.loc[idx[:2]返回的索引不适合dfj。看起来我需要划
dfi
=(I是索引)
和dfj
=(j是索引)
我想在dfj
中添加一个a
列,这样输出将是dfi
的二次抽样因子2
j b a
0 0 0
1 1 2
2 2 4
3 3 6
4 4 8
我的尝试:
idx = pd.IndexSlice
dfj["a"] = dfi.loc[idx[::2]]
这会失败,因为dfi.loc[idx[:2]
返回的索引不适合dfj
。看起来我需要划分索引,或者做另一个变通方法
正确的语法是什么
感谢
dfi.iloc[:2]
或dfi.loc[idx[:2]
与dfj
具有不同的索引,而作业将为您对齐索引。您可以改为传递值:
dfj['a'] = dfi['a'].iloc[::2].values
输出:
b a
j
0 0 0
1 1 2
2 2 4
3 3 6
4 4 8
dfj['a'] = dfi['a'].iloc[::2].values
b a
j
0 0 0
1 1 2
2 2 4
3 3 6
4 4 8