Python 如何计算列的和

Python 如何计算列的和,python,pandas,Python,Pandas,我只是尝试在python中获取数据帧中一列“Value”的总和。我相信我正在创建数据帧,但我不确定。我得到了一个结果,然而,当涉及到.sum时,这不是我想象的结果 import csv import pandas as pd with open('new_taste.csv', 'r') as csv_trades: csv_reader = csv.DictReader(csv_trades) df = pd.DataFrame(data=csv_reader) t

我只是尝试在python中获取数据帧中一列“Value”的总和。我相信我正在创建数据帧,但我不确定。我得到了一个结果,然而,当涉及到.sum时,这不是我想象的结果

import csv
import pandas as pd

with open('new_taste.csv', 'r') as csv_trades:
    csv_reader = csv.DictReader(csv_trades)

    df = pd.DataFrame(data=csv_reader)
    total = df['Value'].sum()
    df.loc['Value'] = pd.Series(df['Value'].sum(), index=['Value'])
    print(df['Value'])

他给了我

0                                                      133
1                                                      180
2                                                     -117
3                                                     -159
4                                                        1
                               ...                        
316                                                     14
317                                                     14
318                                                     19
319                                                     18
Value    133180-117-15911-84-3-10-23434245-23-3085-5241...
Name: Value, Length: 321, dtype: object

我注意到它把每一个数字都带回来了,而不是这些数字的总和。我想把总和带回来。

在将df['Value']值识别为字符串后,它似乎返回字符串值

把代码的第9行改为下面怎么样

df.loc['Value']=pd.Seriesdf['Value'].sum,index=['Value']


你们能分享一下它返回到总变量的值吗。

我想这就是我的答案。我必须通过检查数学,因为我相信我必须进一步调整我的计算结果。我正在返回一个字符串

import csv
import pandas as pd

with open('new_taste.csv', 'r') as csv_trades:
    csv_reader = csv.DictReader(csv_trades)

    df = pd.DataFrame(data=csv_reader)
    total = df['Value'].sum()
    df.loc['Value'] = pd.Series(df['Value'].astype(float).sum(), index=['Value'])
    print(df['Value'])

print(total)


谢谢你扔掉了字符串值的东西。尽管你提供的代码片段与我最初发布的代码片段相同,但我还是能够根据你所说的找到修复程序。无论如何,很高兴能帮助你哈,你做过任何调试吗?这就像是10行代码。在任何情况下,看看你共享的输出的最后一行,有一个相当大的提示,说明问题是什么。此外,熊猫可以读取CSV文件,你可能不需要制作那个系列。你创建了一个变量total来保存总和,但还是要重新计算。这个系列是为了了解为什么我得到了一个很长的数字字符串,我突然意识到我看到了所有的数值。一开始,我不知道它是否是从你看不到的其他专栏中获取的。这让我可以问一个更简洁的问题,看看我遗漏了什么,这是一件非常简单的事情:浮动。我没有最好的调试习惯。这个系列是为了看看为什么我在所有方面都得到了…价值。对不起,我不太明白你的意思。你能换一种说法吗?当我只打印全部函数时,它只返回一行。因为我有很多其他的专栏,你在我的例子中看不到,我不确定我是否从正确的专栏抓取,因为我仍然在学习。所以,我带来了这个系列,并简单地解释了我是如何到达我所处的位置的。这是我的调试方法,这就是为什么你会看到两行代码做同样的事情。使用Pandas读取CSV文件,如果无法正确推断,你可以在那里指定数据类型。您知道您正在创建一行来存储总和,对吗?这似乎并不理想。我只是在过去几天研究了csv和pandas,大约一年没有研究python了。