我正在尝试对具有不同数据类型的列进行计算,因为这样会产生一个错误,我希望所有列都具有相同的数据类型。你知道吗
Question object
Very likely object
Quite likely float64
Slightly likely object
Not very likely float64
Very unlikely object
Total float64
dtype: object
我尝试在lambda函数中使用float(x)。你知道吗
propensity = pd.read_excel(raw_data,'Propensity to buy')
propensity = propensity[['Question','Very likely','Quite likely','Slightly likely','Not very likely',
'Very unlikely','Total']]
propensity['MEAN'] =
sum(
[
propensity['Very likely'].apply(lambda float(x): x*4),
propensity['Quite likely'].apply(lambda float(x): x*3),
propensity['Slightly likely'].apply(lambda float(x): x*2),
propensity['Not very likely'].apply(lambda float(x): x*1),
propensity['Very unlikely'].apply(lambda float(x): x*0)
]
)
得到的结果是SyntaxError: invalid syntax
应该是
而不是
你试过用
df['column_name'].astype(int)
吗?如果要计算某些列,可以创建for循环:或使用数据类型作为条件:
一旦将它们设置为int或float,就可以执行常规计算。你知道吗
您可以通过在从源读取数据时强制转换列来实现这一点:
例如:
相关问题 更多 >
编程相关推荐