小编wfh*_*wfh的帖子

pandas dataframe选择multiindex中的列

我有以下pd.DataFrame:

Name    0                       1                      ...
Col     A           B           A            B         ...
0       0.409511    -0.537108   -0.355529    0.212134  ...
1       -0.332276   -1.087013    0.083684    0.529002  ...
2       1.138159    -0.327212    0.570834    2.337718  ...
Run Code Online (Sandbox Code Playgroud)

它具有MultiIndex列names=['Name', 'Col']和层次级别.该Name标签从0到n,并为每个标签,有两个AB列.

我想要选择此DataFrame的所有A(或B)列.

python hierarchical multi-index pandas

51
推荐指数
3
解决办法
6万
查看次数

按顺序迭代多个排序列表

假设我有许多对(int,str)列表,不一定长度相同.这里唯一的限制是列表按整数部分按升序排序:

a = [(1, 'a'), (4, 'a'), (6, 'b'), (7, 'c'), (12, 'a')]
b = [(5, 'd'), (10, 'c'), (11,'e')]
c = [(0, 'b'), (3, 'd')]
Run Code Online (Sandbox Code Playgroud)

我想要做的是按照相应的整数元素出现的顺序发出字符串元素,即在这种情况下:

(0, 'b'), (1, 'a'), (3, 'd'), (4, 'a'), ... 
Run Code Online (Sandbox Code Playgroud)

我想知道是否有明显的(漂亮+ Python化)的方式来做到这一点只用迭代器a,bc?我已经看过,itertools但在这种情况下无法立即看到如何使用该功能.这些名单a,b,c可能是非常大的,所以我想这样做不读他们入内存,然后排序...

python iterator list

6
推荐指数
1
解决办法
834
查看次数

Pandas 滚动适用于可变窗口长度

我有一个由时间戳索引的值的系列。这些时间戳的间隔不规则,我想计算一些类似于过去 N 秒的滚动平均值(例如),其中 N 是一个常数。不幸的是,在计算滚动数量之前定期重新采样不是一种选择——滚动数量必须在整个数据集上计算。

大熊猫有什么好办法吗?

python pandas

5
推荐指数
1
解决办法
2577
查看次数

关于特定列的逐行填充?

我有以下pandas数据框,我想用D列中的值以行的方式填充AC列中的NaN。是否有一种明确的方法来执行此操作,因此我可以定义所有NaN都应以行为单位D列中的值?我找不到在fillna()中显式执行此操作的方法。

请注意,还有其他列EZ,它们具有自己的NaN,并且可能具有其他用于填写NaN的规则,因此请不要更改

A        B        C        D       E
158      158      158      177     ...  
158      158      158      177     ...
NaN      NaN      NaN      177     ...   
158      158      158      177     ...
NaN      NaN      NaN      177     ...  
Run Code Online (Sandbox Code Playgroud)

仅对AC列具有此功能:

A        B        C        D       E
158      158      158      177     ...  
158      158      158      177     ...
177      177      177      177     ...   
158      158      158      177     ...
177      177      177      177     ...  
Run Code Online (Sandbox Code Playgroud)

谢谢。

python missing-data pandas

2
推荐指数
1
解决办法
8952
查看次数