我有以下(熊猫)DataFrame: b c d e0 100 369 203 3141 100 228 784 3662 200 811 664 2023 200 531 932 575我想迭代它的行,但我需要知道b更改的值的位置。我正在寻找一种以组或类似方式获取此 DF 内容的方法,然后遍历每个组的行(使用嵌套循环,这样我就可以得到b值确实发生变化的指示):在第一次迭代中,我的新 df 将是: b c d e0 100 369 203 3141 100 228 784 366在第二次迭代中,我的新 df 将是: b c d e0 200 811 664 2021 200 531 932 575
1 回答

MYYA
TA贡献1868条经验 获得超4个赞
您可以使用groupby方法:
from pandas import DataFrame
columns = ["b", "c", "d", "e"]
data = [[100, 369, 203, 314], [100, 228, 784, 366], [200, 811, 664, 202], [200, 531, 932, 575]]
df = DataFrame(data=data,columns=columns)
def split_dfs(df, col):
return [group[1] for group in list(df.groupby(col))]
dfs = split_dfs(df, "b")
for df_group in dfs:
print(df_group)
b c d e
0 100 369 203 314
1 100 228 784 366
b c d e
2 200 811 664 202
3 200 531 932 575
添加回答
举报
0/150
提交
取消