我尝试寻找一个简洁的答案,但没有任何帮助。我正在尝试向数据框中添加一行,该数据框采用第一列的字符串,然后为每列获取总和。我遇到了标量问题,因此我尝试将所需的行制成一系列,然后转换为数据帧,但显然我添加了四行和一个列值,而不是添加了一行和四个列值。
我的代码:
def country_csv():
# loop through absolute paths of each file in source
for filename in os.listdir(source):
filepath = os.path.join(source, filename)
if not os.path.isfile(filepath):
continue
df = pd.read_csv(filepath)
df = df.groupby(['Country']).sum()
df.reset_index()
print(df)
# df.to_csv(os.path.join(path1, filename))
示例数据框:
Confirmed Deaths Recovered
Country
Afghanistan 299 7 10
Albania 333 20 99
希望将其视为第一行
World 632 27 109
最佳答案
import pandas as pd
import datetime as dt
df
Confirmed Deaths Recovered
Country
Afghanistan 299 7 10
Albania 333 20 99
df.loc['World'] = [df['Confirmed'].sum(),df['Deaths'].sum(),df['Recovered'].sum()]
df.sort_values(by=['Confirmed'], ascending=False)
Confirmed Deaths Recovered
Country
World 632 27 109
Albania 333 20 99
Afghanistan 299 7 10
关于python - 如何向 pandas 数据框添加条件行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61048615/