获取一系列列表的平均值并计算平均值。

3

我正在处理一系列字符串。我从这些字符串中提取了数字,并希望获得平均值。问题似乎在于它们仍然是字符串,而我不确定如何将系列中的每个项转换为整数,然后取平均值。

list_series = added_df["Salary Estimate"].str.findall(r'\d+')
for index, value in list_series.items():
    for i in value:
        i = int(i)       
from statistics import mean
added_df['Average Salary'] = added_df['Salary Estimate'].map(mean)

我以为已经将它们转化为整数了,但我仍然收到了这个错误信息:

类型错误:不能将字符串类型转换为分子/分母


1
请执行added_df['Salary Estimate'].astype(int),以将它们全部转换为int - Michael S.
1个回答

2
你可以使用 explode 然后再使用 groupby
added_df["Salary Estimate mean"] = added_df["Salary Estimate"].str.findall(r'\d+').explode().astype(int).groupby(level=0).mean()

或者

added_df["Salary Estimate"].str.findall(r'\d+').apply(pd.Series).astype(int).mean(1)

请在这里提供帮助:https://dev59.com/IcTsa4cB1Zd3GeqPL-9J - Himanshuman

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接