原始问题:
python如何在dataframe中遍历所有数据,遇见相同的数据提取该数据的行号,并对特定位置数据进行汇总操作
可以使用pandas的iterrows()方法来遍历dataframe中的每一行数据,然后使用列表解析式来实现遇见相同的数据时提取该数据的行号。
具体代码如下:
# 先建立一个存储相同数据行号的列表row_list
row_list = []
# 遍历dataframe中每一行数据
for row_index, row in df.iterrows():
# 如果当前行特定位置(column)的值与上一行相同(即除了当前这一行外))
if row[column] == df.iloc[row_index-1][column]:
# 把当前这一行的索引加入列表row_list中
row_list.append(row_index)
# 否则就对之前所有相同数值所在位置(column2)进行总和
else:
# 获得之前所有相同数值所在位置(column2)总和 sum_val = df.loc[row_list][column2].sum()
# 把总和写入当前这一样特定位置(column3) df.loc[row, column3] = sum_val
python如何在dataframe中遍历所有数据,遇见相同的数据提取该数据的行号,并对特定位置数据进行汇总操作
https://www.xiaoing.com/zhidao/13109.html
Prev:写一篇有理想、道德、学识、爱心的教师形象的论文