import pandas as pd # 输入文件路径 file_path = r"D:\分段统计_分科_分人.xlsx" # 学科、分值、年级 lst_course=['前100名','前140名','前200名','前250名','后100名'] lst_max_score = [120, 120, 120, 160, 70] grade_beg = 901 grade_end = 915 # 读取文件 df = pd.read_excel(file_path) total =[] for i in range(len(lst_course)): tal = df[lst_course[i]].sum() total.append(tal) print(total) 现在我需要将total列表中的数据合并到df的最后一行,程序要加什么?
时间: 2024-02-23 18:59:27 浏览: 76
pd_split_train_test.rar_pandas_pandas对数据分类_pd.split_split_数据分类
你可以将 total 列表转换为一个 DataFrame,然后使用 concat() 函数将其附加到 df 的末尾,最后重置索引。下面是代码示例:
```python
import pandas as pd
# 输入文件路径
file_path = r"D:\分段统计_分科_分人.xlsx"
# 学科、分值、年级
lst_course = ['前100名', '前140名', '前200名', '前250名', '后100名']
lst_max_score = [120, 120, 120, 160, 70]
grade_beg = 901
grade_end = 915
# 读取文件
df = pd.read_excel(file_path)
# 计算 total 列表
total = []
for i in range(len(lst_course)):
tal = df[lst_course[i]].sum()
total.append(tal)
# 将 total 列表转换为 DataFrame
total_df = pd.DataFrame([total], columns=lst_course)
# 将新的 DataFrame 附加到目标 DataFrame 的末尾
df = pd.concat([df, total_df], ignore_index=True)
# 重置索引
df = df.reset_index(drop=True)
print(df)
```
注意,这里使用了 ignore_index=True 参数来确保新行的索引是连续的。如果不使用这个参数,会出现新行的索引与目标 DataFrame 的索引重叠的情况。
阅读全文