我正在尝试对包含混合数字和字符串的DataFrame列中的数字(整数或浮点数)求和。
实际上,我是熊猫的新手,我只是尝试了简单,直接的方法。
假设以下内容:
e = pd.DataFrame(np.random.randn(5,1))
e[0][1]='x'
e[0][4]='y'
做 e [0] .sum()
肯定会返回类型错误。
我怀疑用pd.np.nan替换了字符串。但是如何?
答案 0 :(得分:1)
使用pandas.to_numeric
:
import pandas as pd
pd.to_numeric(e[0], 'coerce').sum()
输出:
-1.8781900945531884
coerce
选项会将所有无效元素设置为NaN
,默认情况下pd.Series.sum
在其计算中不包括NaN
。