题
我在弄清楚如何根据其他两列中的值创建新的DataFrame列时遇到麻烦。我需要使用if / elif /
else逻辑。但是我发现的所有文档和示例仅显示了if / else逻辑。这是我正在尝试做的一个示例:
码
df['combo'] = 'mobile' if (df['mobile'] == 'mobile') elif (df['tablet'] =='tablet') 'tablet' else 'other')
我也愿意使用where()。只是找不到正确的语法。
如果您有多个分支语句,则最好创建一个接受行的函数,然后将其应用于axis=1
。这通常比通过行迭代要快得多。
def func(row):
if row['mobile'] == 'mobile':
return 'mobile'
elif row['tablet'] =='tablet':
return 'tablet'
else:
return 'other'
df['combo'] = df.apply(func, axis=1)
问题内容: 以下面的DataFrame为例, 生成一个新列的简单方法是什么?该列包含某一列中的某些数据聚集? 例如,如果我总结了 我怎样才能得到 问题答案:
问题内容: 我有一个如下所示的df: 我正在尝试创建一个如下所示的df: 我试过了 但这不是我要寻找的。 任何指导表示赞赏 问题答案: 那不是新的专栏,而是新的DataFrame: 要获得想要的结果,请使用: 要获得“新列”,您可以使用transform: 我建议阅读docs的split- apply-combine部分 。
我正在从pandas输出一个csv文件,其中包含一些用于latex报告的调查文本。一些响应在其响应中带有逗号,因此熊猫将数据输出为 通过将字段用双引号括起来,显然可以处理字段中的逗号。 我希望上面看起来像这样: 通过将所述字段包装在{}中,因为这是latex包可以理解的分隔符。 有没有办法告诉熊猫。要做这个吗? 我已经尝试了以下方法 当然,当我需要“}”时,它会用“{”关闭文本包装 更新当我使用p
我有一本字典的形式: 例如, 我想转换成熊猫数据帧与列1的用户名和其他列的电影评级,即: 但是,一些用户没有对电影进行评分,因此这些电影不包括在该用户键()的值()中。在这种情况下,只需用NaN填充条目就好了。 现在,我迭代键,填充列表,然后使用此列表创建数据帧: 但这只给了我一个用户的数据框,这些用户对片场中的所有电影都进行了评分。 我的目标是通过迭代电影标签(而不是上面显示的暴力方法)来追加到
我有一个这样的数据帧: 我想知道我们如何使用GROUPBY实现相同的结果? 感谢帮助。 类似的问题: Pandas列值到列?
我想通过对两个现有列应用函数,在数据框中创建一个新列。根据这个答案,当我只需要一列作为参数时,我就能够创建一个新列: 但是,当函数需要多个参数时,我不知道如何执行相同的操作。例如,如何通过将列a和列B传递给下面的函数来创建新列?