如何使用Python计算CSV文件中某一列的总和?
解决CSV单列求和的字符串错误问题
你的问题出在CSV文件没有表头,pd.read_csv默认把第一行数据当成了列名,导致后续所有数值被识别为字符串类型,执行sum(df)时就会触发字符串拼接的错误。
以下是几种可行的解决方法:
方法一:用Pandas指定无表头读取
import pandas as pd # 通过header=None告知Pandas文件没有表头,自动生成列索引 df = pd.read_csv('1.csv', header=None) # 对第0列(唯一的列)求和 df_sum = df[0].sum() print(df_sum)
方法二:给Pandas指定自定义列名
import pandas as pd # 手动指定列名,避免第一行数据被当作表头 df = pd.read_csv('1.csv', names=['numbers']) df_sum = df['numbers'].sum() print(df_sum)
方法三:用基础Python实现(无需Pandas)
如果想更直观理解求和过程,也可以不用第三方库:
total = 0 with open('1.csv', 'r', encoding='utf-8') as file: for line in file: # 去除每行的换行符并转为整数,累加求和 total += int(line.strip()) print(total)
内容的提问来源于stack exchange,提问作者Fiordi Toska
相关产品推荐
相关产品推荐

