首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何对数据帧中的每个变量进行切片?

如何对数据帧中的每个变量进行切片?
EN

Stack Overflow用户
提问于 2021-02-23 23:36:49
回答 2查看 42关注 0票数 0

我有一个名为car的数据框架,我想创建一个新的列'Brand‘,它是列数据'name’的第一个单词。

输入数据帧:

代码语言:javascript
复制
mpg cylinders   displacement    horsepower  weight          name
0   18.0        8               307.0       130.0           chevrolet chevelle malibu
1   15.0        8               350.0       165.0           buick skylark 320
2   18.0        8               318.0       150.0           plymouth satellite
3   16.0        8               304.0       150.0           amc rebel sst
4   17.0        8               302.0       140.0           ford torino

首先,我找出第一个单词的结尾:

代码语言:javascript
复制
cars['brandno'] = cars['name'].str.find(' ')

然后我用brandno切分了这个词,如下所示:

代码语言:javascript
复制
cars['brand'] = cars['name'].str[:'brandno']

结果:

代码语言:javascript
复制
mpg cylinders   displacement    horsepower  weight      name                        brand   brandno
0   18.0        8               307.0       130.0       chevrolet chevelle malibu   NaN     9.0
1   15.0        8               350.0       165.0       buick skylark 320           NaN     5.0
2   18.0        8               318.0       150.0       plymouth satellite          NaN     8.0
3   16.0        8               304.0       150.0       amc rebel sst               NaN     3.0
4   17.0        8               302.0       140.0       ford torino                 NaN     4.0

然而,正如在reuslt中所看到的,它不起作用。我该如何解决这个问题呢?

EN

回答 2

Stack Overflow用户

发布于 2021-02-23 23:48:03

您可以简单地使用pd.Series.apply()

代码语言:javascript
复制
cars['brandno'] = cars['name'].apply(lambda x: x.split(" ")[0])
# This should make a new column having only the first name of the cars
票数 0
EN

Stack Overflow用户

发布于 2021-02-23 23:55:58

以下可能适用于您:

代码语言:javascript
复制
cars['brand'] = cars.name.str.split(expand=True)[0]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66336227

复制
相关文章

相似问题

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