当前位置: 首页 > 知识库问答 >
问题:

使用assign方法创建列

贾成天
2023-03-14

假设我有以下数据帧:

我想创建一个基于列a的新列,并根据列a的值创建组。

df = pd.DataFrame([['1', 3],['2', 5],['3', 20],['4',8],['5',7],['6',13],['7',33],['8',2]], columns=['index', 'A'])
df['groups'] =  df['A'].apply(lambda x: 'high' if x>15 else 'medium' if 15>=x>10 else 'low')

我怎么能使用assign做同样的事情呢?

df = df\
.assign(groups = ?)

共有1个答案

谢奇略
2023-03-14

使用assign()方法:

df=df.assign(groups =df['A'].apply(lambda x: 'high' if x>15 else 'medium' if 15>=x>10 else 'low'))

value=df['A'].apply(lambda x: 'high' if x>15 else 'medium' if 15>=x>10 else 'low')
df=df.assign(groups=value)

现在,如果您打印df,您将得到所需的输出:

#output

    index   A   groups
0   1       3   low
1   2       5   low
2   3       20  high
3   4       8   low
4   5       7   low
5   6       13  medium
6   7       33  high
7   8       2   low
 类似资料:
  • 问题内容: 我有一个关于反射的问题,我正在尝试使用某种eval()方法。所以我可以打电话给: 现在,我了解到java中没有eval方法,但存在反射。我做了以下代码: 这非常有效(当然,此代码周围有一个try,catch块)。它运行测试方法。但是,我想调用多个都有不同参数的方法。 我不知道这些是什么参数(不仅是String.class)。但这怎么可能呢?如何获得方法的参数类型?我知道以下方法: 但这

  • 这边有个getMenuType、getMenuType1、getMenuType2三个方法引用,getMenuType1传入到queryWrapper中查询没问题,getMenuType和getMenuType2报错

  • 问题内容: 我正在尝试编写一个jQuery插件,它将为调用它的对象提供其他功能/方法。我在网上阅读的所有教程(过去2个小时内一直在浏览)最多都包含如何添加选项,但不包含其他功能。 这是我想要做的: //通过调用该div的插件将div格式化为消息容器 或类似的规定。归结为以下几点:调用插件,然后调用与该插件关联的函数。我似乎找不到找到这种方法的方法,而且我以前见过很多插件都可以这样做。 这是到目前为

  • 本文向大家介绍Python使用multiprocessing创建进程的方法,包括了Python使用multiprocessing创建进程的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python使用multiprocessing创建进程的方法。分享给大家供大家参考。具体分析如下: 进程可以通过调用multiprocessing的Process进行创建,下面代码创建两个进程。 运行结

  • 也许有一些我看不到的非常简单的东西。我正在尝试从某个API调用一个方法,这个方法要求PendingIntent异步向我发送一些值。我已经阅读了半小时的文档和示例,无法理解简单的方法。 更准确地说,我想调用ActivityRecognitionApi。为了举例说明,我是如何从类似的api接收位置的: 所以我想做同样的事情来接收认可的活动: 那么,创建一个PendingEvent来获取价值的简单方法是

  • Table of Contents assign counter cycle debug eval fetch html_checkboxes html_image html_options html_radios html_select_date html_select_time html_table math mailto popup_init popup textformat Smarty