使用 UDF 删除多列 - python3
Posted
技术标签:
【中文标题】使用 UDF 删除多列 - python3【英文标题】:Drop multiple columns using UDF - python3 【发布时间】:2021-05-25 23:38:12 【问题描述】:我正在尝试使用创建的函数删除几乎一半的数据帧。请注意,它看起来没有吸引力。
def drop_cols(df):
df.drop(['scrape_id','last_scraped','description','listing_url','neighbourhood','calendar_last_scraped',
'amenities','neighborhood_overview', 'picture_url','host_url', 'host_about',
'host_location','host_total_listings_count','host_thumbnail_url','host_picture_url',
'host_verifications','bathrooms_text','has_availability','minimum_minimum_nights',
'maximum_minimum_nights','minimum_maximum_nights','maximum_maximum_nights','minimum_nights_avg_ntm',
'maximum_nights_avg_ntm','number_of_reviews_l30d','calculated_host_listings_count',
'calculated_host_listings_count_entire_homes','calculated_host_listings_count_private_rooms',
'calculated_host_listings_count_shared_rooms'],axis=1)
return df
调用该函数不会给我任何更改。我仍然有完整的数据框。 有什么想法吗?我认为这是一个基本的缩进问题。
【问题讨论】:
将结果分配回df? 感谢您的意见,萨米。 Inplace = True,继续轴排序我的问题 【参考方案1】:你需要告诉 drop 方法你正在删除列 inPlace(在同一个 df 中),否则你需要再次声明 df
在您的轴声明 (axis=1) 后添加 inplace = true 并重试。
【讨论】:
我试试看。太棒了,像魅力一样工作! 太好了!如果此答案有助于将其标记为已接受 将在 5 分钟内完成(由于计时器)以上是关于使用 UDF 删除多列 - python3的主要内容,如果未能解决你的问题,请参考以下文章