我有以下(熊貓)DataFrame: b c d e0 100 369 203 3141 100 228 784 3662 200 811 664 2023 200 531 932 575我想迭代它的行,但我需要知道b更改的值的位置。我正在尋找一種以組或類似方式獲取此 DF 內(nèi)容的方法,然后遍歷每個組的行(使用嵌套循環(huán),這樣我就可以得到b值確實發(fā)生變化的指示):在第一次迭代中,我的新 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條經(jīng)驗 獲得超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
提交
取消