gpt4 book ai didi

python - 如何获得范围的平均值?

转载 作者:行者123 更新时间:2023-11-28 20:12:36 24 4
gpt4 key购买 nike

我有如下数据集:

data = { "size":["2","5mm","10mm","12-15mm","16-19mm"] }
dt =pd.DataFrame(data=data)

我需要获取每个单元格的平均值并将其替换为范围( float )?

所以,输出是

[2,5,10,13.5,17.5]

我所做的是:

begin = dt["size"].str.replace("mm", "").split("-")[0]

它报错了,

AttributeError: 'Series' object has no attribute 'split'

此外,我不确定这是否是最佳做法。

获取此字符串范围平均值的最佳方法是什么?

最佳答案

使用:

print(dt['size'].str.rstrip('mm').str.split('-', expand=True).astype(float).mean(1))

或者使用:

print(dt['size'].str.rstrip('mm').apply(lambda x: sum(map(int, x.split('-'))) / len(x.split('-'))).astype(float))

输出:

0     2.0
1 5.0
2 10.0
3 13.5
4 17.5
dtype: float64

关于python - 如何获得范围的平均值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57197939/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com