繁体   English   中英

Pandas - 将选定的列分配回原始数据框

[英]Pandas - assign selected columns back to original dataframe

这些是我的数据框的数据类型:

Out[172]: 
price                   float64
host_response_rate      float64
host_acceptance_rate    float64
host_is_superhost        object
host_listings_count     float64
zipcode                  object
property_type            object
room_type                object
accommodates              int64
bathrooms               float64
bedrooms                float64
beds                    float64
bed_type                 object
amenities                object
number_of_reviews         int64
review_scores_rating    float64
cancellation_policy      object
reviews_per_month       float64
city                     object
dtype: object

我想缩放所有数值,我使用以下代码执行此操作:

pd.DataFrame(scaler.fit_transform(df.select_dtypes("float64").to_numpy()), columns = df.select_dtypes("float64").columns)

我很难找到如何以动态方式将正确的列分配给原始列。 我试过了,它不起作用,因为我调用了一个函数:

df.select_dtypes("float64") = pd.DataFrame(scaler.fit_transform(df.select_dtypes("float64").to_numpy()), columns = df.select_dtypes("float64").columns)

如何将每一列分配回其原始数据框?

这对我有用:

df.loc[:,df.dtypes=='float64'] = scaler.fit_transform(df.select_dtypes('float64'))

或者

df.loc[:,df.dtypes=='float64'] = scaler.fit_transform(df.loc[:,df.dtypes=='float64'])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM