【发布时间】:2020-12-13 15:27:09
【问题描述】:
我正在尝试将数据框中的一列价格转换为浮点数,然后计算前 5 行的平均值。 首先我以这种方式成功地做到了:
import pandas as pd
import numpy as np
paris_listing = pd.read_csv("C:../.../.../paris_airbnb.csv")
stripped_commas = paris_listing["price"].str.replace(",", "")
stripped_dollars = stripped_commas.str.replace("$", "")
paris_listing["price"] = stripped_dollars.astype("float")
mean_price = paris_listing.iloc[0:5]["price"].mean()
print (mean_price)
但我尝试创建一个函数并将其应用于数据框,但它不起作用
def conversion_price(price_conv):
price_conv = price_conv.str.replace(",", "")
price_conv = price_conv.str.replace("$", "")
price_conv = price_conv.astype("float")
price_mean = price_conv.iloc[0:5].mean()
paris_listing["converted_price"] = paris_listing["price"].apply(conversion_price)
【问题讨论】:
-
您的具体错误是什么?请提供所有相关详细信息,如果可行,甚至包括 paris_listing.head() 的输出。
-
这是一个
pandas的问题,与machine-learning无关(标签已编辑)。 -
如果你想分配给其他列然后在函数中你fogot
return price_conv
标签: python pandas dataframe type-conversion