Python 包含数字和文本的Sum列,使用Pandas

Python 包含数字和文本的Sum列,使用Pandas,python,excel,pandas,sum,Python,Excel,Pandas,Sum,我有一个包含数字和文本的列,我试图找到这些值的总和 我在下面尝试了这个求和函数,但它不起作用。你能告诉我还有什么可以尝试的吗 df["Price"].sum() 如果所有值都是数字,则可以使用: print(sum(df['Price'])) 但在您的情况下,您可以使用: import numbers print(sum([x for x in df['Price'] if isinstance(x, numbers.Number)])) 如果所有值都是数字,则可以使用: print(su

我有一个包含数字和文本的列,我试图找到这些值的总和

我在下面尝试了这个求和函数,但它不起作用。你能告诉我还有什么可以尝试的吗

df["Price"].sum()

如果所有值都是数字,则可以使用:

print(sum(df['Price']))
但在您的情况下,您可以使用:

import numbers
print(sum([x for x in df['Price'] if isinstance(x, numbers.Number)]))

如果所有值都是数字,则可以使用:

print(sum(df['Price']))
但在您的情况下,您可以使用:

import numbers
print(sum([x for x in df['Price'] if isinstance(x, numbers.Number)]))

使用
pd.\u数字

Ex:

df = pd.DataFrame({"Price": ["Nil", "Na", 1,2,3,4,5, "Null"]})

print(df[pd.to_numeric(df['Price'], errors='coerce').notnull()].sum())
#or
print(pd.to_numeric(df['Price'], errors='coerce').dropna().sum())
Price    15.0
dtype: float64
输出:

df = pd.DataFrame({"Price": ["Nil", "Na", 1,2,3,4,5, "Null"]})

print(df[pd.to_numeric(df['Price'], errors='coerce').notnull()].sum())
#or
print(pd.to_numeric(df['Price'], errors='coerce').dropna().sum())
Price    15.0
dtype: float64

使用
pd.\u数字

Ex:

df = pd.DataFrame({"Price": ["Nil", "Na", 1,2,3,4,5, "Null"]})

print(df[pd.to_numeric(df['Price'], errors='coerce').notnull()].sum())
#or
print(pd.to_numeric(df['Price'], errors='coerce').dropna().sum())
Price    15.0
dtype: float64
输出:

df = pd.DataFrame({"Price": ["Nil", "Na", 1,2,3,4,5, "Null"]})

print(df[pd.to_numeric(df['Price'], errors='coerce').notnull()].sum())
#or
print(pd.to_numeric(df['Price'], errors='coerce').dropna().sum())
Price    15.0
dtype: float64

你可以这样做


df.Price[df.Price.astype(str).str.isnumeric()].sum()

您可以这样做


df.Price[df.Price.astype(str.str.isnumeric()].sum()

@kalanerandajayasuriya:这是一个怎样重复的问题,请阅读这个问题。@kalanerandajayasuriya:这是一个怎样重复的问题,请阅读这个问题。