如何对数据框进行二次采样?

我有dfi=(i是索引)


i     a

0     0

1     1

2     2

3     3

4     4

5     5

6     6

7     7

8     8

9     9

and dfj=(j 是索引)


j     b

0     0

1     1

2     2

3     3

4     4

我想添加一a列,dfj以便输出将以dfi2 倍子采样


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. 看来我需要划分索引,或者做另一种解决方法。


正确的语法是什么?


拉丁的传说
浏览 50回答 1
1回答

呼如林

dfi.iloc[::2]或dfi.loc[idx[::2]]具有与 不同的索引dfj,而赋值将为您对齐索引。您可以改为传递值:dfj['a'] = dfi['a'].iloc[::2].values输出:   b  aj      0  0  01  1  22  2  43  3  64  4  8
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python