我有这个df
,其中有几行在“百分比”列中具有多个值。有些行只有一个值,有些行则有2-3个值。我想计算具有多个值的行的平均值。
location Ethnic Percent
0 Beaches-East York English , Scottish , Canadian 19.7 , 18.9 , 24.2
由于只有4行具有多个值,所以我以非常业余的方式通过逐行计算并替换值来进行操作。如果我要计算50行,什么是更有效的方法?
我的业余尝试:
import statistics
print(statistics.mean([19.7,18.9,24.2]))
答案 0 :(得分:0)
您可以在百分比列中使用Apply功能来实现
df["mean_percent"] = df.Percent.apply(lambda x: pd.np.mean([float(p) for p in x.split(",")]))
print(df)