![](/img/trans.png)
[英]Applying corrections to a subsampled copy of a dataframe back to the original dataframe?
[英]accessing subsampled dataframe by mask on fully sampled dataframe
这是工作代码
import pandas as pd
full_df = pd.DataFrame({
"a": [1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, ]
})
sub_df = pd.DataFrame({
"a": [1, 2, 3, 4],
"b": [5, 6, 7, 8]
})
factor = 4
print(full_df)
print("_____")
print(sub_df)
mask = full_df["a"] == 2
print(full_df[mask])
印刷
a 0 1 1 1 2 1 3 1 4 2 5 2 6 2 7 2 8 3 9 3 10 3 11 3 12 4 13 4 14 4 15 4 _____ ab 0 1 5 1 2 6 2 3 7 3 4 8 a 4 2 5 2 6 2 7 2
我现在想在与full_df
的索引相对应的索引处访问sub_df
,仅在full_df
被屏蔽的地方。
像(不工作) print(sub_df[mask % factor])
预期的:
ab 1 2 6
如何在 pandas 中执行此操作?
你的意思是:
factor=4
new_mask = mask[np.arange(len(full_df))%factor==0]
sub_df[new_mask.values]
Output:
a
1 2
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.