如何使用Pandas Python将字符串拆分为数据帧中的几列?

索恩海尔:

我知道以下问题:

1.)如何使用熊猫基于多个字符串索引拆分列?2)如何将一列中的文本分成多行?

我想将它们分成几个新列。假设我有一个看起来像这样的数据框:

id    | string
-----------------------------
1     | astring, isa, string
2     | another, string, la
3     | 123, 232, another

我知道使用:

df['string'].str.split(',')

我可以分割一个字符串。但是,下一步,我想像这样有效地将拆分后的字符串放入新列中:

id    | string_1 | string_2 | string_3
-----------------|---------------------
1     | astring  | isa      | string
2     | another  | string   | la
3     | 123      | 232      | another
---------------------------------------

我可以例如这样做:

for index, row in df.iterrows():
    i = 0
    for item in row['string'].split():
        df.set_values(index, 'string_{0}'.format(i), item)
        i = i + 1

但是,如何才能更优雅地达到相同的结果呢?

juanpa.arrivillaga:

str.split方法有一个expand参数:

>>> df['string'].str.split(',', expand=True)
         0        1         2
0  astring      isa    string
1  another   string        la
2      123      232   another
>>>

带有列名:

>>> df['string'].str.split(',', expand=True).rename(columns = lambda x: "string"+str(x+1))
   string1  string2   string3
0  astring      isa    string
1  another   string        la
2      123      232   another

Python> = 3.6 f字符串的情况更加整洁:

>>> (df['string'].str.split(',', expand=True)
...              .rename(columns=lambda x: f"string_{x+1}"))
  string_1 string_2  string_3
0  astring      isa    string
1  another   string        la
2      123      232   another

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用:将'hh:mm:ss'字符串拆分为毫秒数,在Python的数据帧的每一行中浮动?

如何使用python将字符串拆分为dict?

如何基于唯一的字符串值将pandas数据帧拆分为多个数据帧而不进行聚合

如何在pyspark中使用pandas_udf拆分数据帧中的字符串

使用python将字符串拆分为句子

使用空格将字符串拆分为单词并使用python将它们存储在列表中

如何在 Python 中的数据帧中按特定字符串长度拆分行?

如何使用 Java 中的拆分方法将字符串句子拆分为单词?

如何使用换行符或行尾将 mysql 数据库中的字符串拆分为 2 部分?

如何将数据帧字符串列拆分为两列?

如果在 jupyter notebook 中使用 python 或 pandas 的长度不同,如何将列中的逗号分隔字符串拆分为不同的列

Python pandas:将字符串拆分为多列,并从split参数中提取列数据

如何将字符向量拆分为数据帧?

如何在 Databricks 上使用 Apache Spark/python 将字符串拆分为多列

如何使用MYSQL将字符串拆分为表中的多行?

如何使用字符串将 ARG 拆分为 Dockerfile 中的分隔行?

如何使用javascript将字符串中的值拆分为与数组相同的值?

如何将字符串拆分为字符矩阵

如何将字符串拆分为字符数组?

将pandas数据框字符串拆分为单独的行

将具有多个值的pandas数据框列字符串拆分为单独的行

如何根据数据框中的分隔符将字符串拆分为两个字符串

将空格字符串拆分为列表,但不能在引号中拆分空格,并且在Python中的引号中还允许使用特殊字符(例如$,%等)

Python 3:如何将字符串拆分为一系列字符?

如何按 Bigquery 中的字符数将字符串拆分为行?

如何将字符串数据从 JSON 拆分为数组

如何将字符串从数组中的对象拆分为数组中的新对象

将单元格中的字符串拆分为不同的行,pandas

将 Pandas 中的句子(字符串)拆分为带有句子编号的单独单词行