首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FIltering行和附加值

FIltering行和附加值
EN

Stack Overflow用户
提问于 2020-12-21 11:35:27
回答 2查看 265关注 0票数 4

我希望过滤一个dataframe并将一个值附加到dataframe中的一个新/现有列中。例如,在下面的dataframe中,我希望将值0.7附加到月份值等于11的列预平均值中,换句话说,pre_mean列应该包含在第2行到第5行的值为0.7,而所有其他列都应该有一个NaN值。

我试过这样的方法,但这当然是错误的。

代码语言:javascript
复制
df[:pre_mean] = ifelse.(df[:month] .== 11, 0.7, df)

在python中,您可以使用pd.apply或np.where函数来完成这个任务,

代码语言:javascript
复制
#How to do in python
df["pre_mean"] = np.where(df["month"] == 11, 0.7, None)

但我不知道如何在朱莉娅身上实现这一点?有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-12-21 11:42:43

代码语言:javascript
复制
df[df.month .== 11, :pre_mean] .= 0.7

这应该能行。

票数 6
EN

Stack Overflow用户

发布于 2020-12-21 11:52:05

同样,问题中的答案几乎是正确的:

代码语言:javascript
复制
df.pre_mean .= ifelse.(df.month .== 11, 0.7, df.premean)

它应该比@Andy_101提出的解决方案更快(这也是正确的),因为它没有分配。

另外请注意,df[:pre_mean]在DataFrames.jl中是不允许的。数据帧是一个二维对象,所以您必须同时传递行和列选择器(除非您使用getproperty方法,比如@Andy_101和of的答案)。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65392040

复制
相关文章

相似问题

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