用 Python 编写一个程序,从文件中读取 CSV 数据并打印最后两行的总和

pythonpandasserver side programmingprogramming更新于 2024/6/21 2:20:17

假设您的 csv 文件中有以下数据,并将其保存为 pandas.csv。

pandas.csv

Id,Data
1,11
2,22
3,33
4,44
5,55
6,66
7,77
8,88
9,99
10,100

最后两条记录的总和结果为,

Sum of last two rows:
Id    9
Data 99

解决方案 1

  • 从 csv 文件访问存储的数据并使用以下方法将其保存为数据,

data = pd.read_csv('pandas.csv')
  • 将数据转换为数据框并存储在 df 中,

df = pd.DataFrame(data)
  • 应用以下方法获取最后两条记录并计算总和,

df.tail(2)).sum()

示例

让我们看看下面的实现,以便更好地理解 −

import pandas as pd
data = pd.read_csv('pandas.csv')
df = pd.DataFrame(data)
print("Dataframe is\n",df)
print("Last two rows\n",df.tail(2).sum())

输出

Dataframe is
 Id Data
0 1 11
1 2 22
2 3 33
3 4 44
4 5 55
5 6 66
6 7 77
7 8 88
8 9 99
9 10 100
Last two rows
Id    19
Data 199

解决方案 2

  • 使用以下方法从 csv 文件访问存储的数据并将其保存为数据,

data = pd.read_csv('pandas.csv')
  • 将数据转换为数据框并存储在 df 中,

df = pd.DataFrame(data)
  • 应用以下切片索引方法获取最后两条记录,

df.iloc[-2:]

示例

让我们看看下面的实现更好地理解 −

import pandas as pd
data = pd.read_csv('pandas.csv')
df = pd.DataFrame(data)
print("Dataframe is\n",df)
print("Last two rows\n",df.iloc[-2:].sum())

输出

Dataframe is
 Id Data
0 1 11
1 2 22
2 3 33
3 4 44
4 5 55
5 6 66
6 7 77
7 8 88
8 9 99
9 10 100
Last two rows
Id    19
Data 199

解决方案 3

  • 使用以下方法从 csv 文件访问存储的数据并将其保存为数据,

data = pd.read_csv('pandas.csv')
  • 将数据转换为数据框并存储在 df 中,

df = pd.DataFrame(data)
  • 将 id sum 和 data sum 初始值设置为 0

  • 设置 for 循环以访问数据框数据并设置 if 条件以访问最后两个数据,

for i in range(len(df)):
if(i==len(df)-2 or i==len(df)-1):
  • 使用 df.iloc[i][0] 和 df.iloc[i][1] 计算第一列和第二列之和,

id_sum = id_sum + df.iloc[i][0]
data_sum = data_sum + df.iloc[i][1]

示例

让我们看看下面的实现以便更好地理解,

import pandas as pd
data = pd.read_csv('pandas.csv')
df = pd.DataFrame(data)
id_sum = 0
data_sum = 0
for i in range(len(df)):
   if(i==len(df)-2 or i==len(df)-1):
      id_sum = id_sum + df.iloc[i][0]
      data_sum = data_sum + df.iloc[i][1]
print("Id",id_sum)
print("Data",data_sum)

输出

Id    19
Data 199

相关文章


有用资源