【发布时间】:2020-07-10 06:08:09
【问题描述】:
我正在尝试根据另一列的中值获取一个值,我正在尝试两种不同的方法,其中一种产生结果,另一种则没有。你能告诉我这两个代码有什么区别吗?
代码1:
med = df2['% Renewable'].median()
for x in df2['% Renewable']:
if med >= x:
df2['median'] = 0
else:
df2['median'] = 1
代码 2:
df2['median1'] = [1 if x>=med else 0 for x in df2['% Renewable']]
【问题讨论】:
-
在第一个代码中,您将
df2['median']设置为 1 或 0(重复)。在第二个代码中,您将其设置为一系列值。 -
在第一种情况下,尽管对值进行了迭代,但分配会分配 整个 列,因此您将根据最后一个值为所有内容分配 1 或零
标签: python-3.x pandas pandas-groupby pandas-datareader