首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >创建新的Dataframe数据切片问题

创建新的Dataframe数据切片问题
EN

Stack Overflow用户
提问于 2019-02-23 21:18:18
回答 1查看 81关注 0票数 1

这是我的代码片段。然而,代码可以工作,我得到以下错误:

“正在尝试对DataFrame中切片的副本设置值”

我猜这是由于某些过时的语法造成的。

代码语言:javascript
代码运行次数:0
运行
复制
new_data['mon_fri'] = 0
for i in range(0,len(new_data)):
    if (new_data['Dayofweek'][i] == 0 or new_data['Dayofweek'][i] == 4):
        new_data['mon_fri'][i] = 1
    else:
        new_data['mon_fri'][i] = 0
EN

回答 1

Stack Overflow用户

发布于 2019-02-23 21:19:55

如果存在向量化的替代方案,不要在pandas中循环,这里可以使用isin作为布尔掩码,并转换为整数以进行True/False1/0的映射:

代码语言:javascript
代码运行次数:0
运行
复制
new_data['mon_fri'] = new_data['Dayofweek'].isin([0,4]).astype(int)

或者使用numpy.where

代码语言:javascript
代码运行次数:0
运行
复制
new_data['mon_fri'] = np.where(new_data['Dayofweek'].isin([0,4]), 1, 0)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54842044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档