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


假设你的 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:

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:

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:

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

df = pd.DataFrame(data)
  • 将 id 总和和数据总和的初始值设置为 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

更新于: 2021年2月24日

1K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告