Pandas怎么使用分隔符或正则表达式将字符串拆分为多列
导读:本文共2841字符,通常情况下阅读需要9分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 字符串方法是pandas.Series方法。适用于pandas.Series或pandas.DataFrame列str.split():用定界符分割要按定界符(delimiter)进行拆分,使用字符串方法str.split()。pandas.Series以以下pandas.Series为例。importpandasaspds_org=pd.Series([&... ...
目录
(为您整理了一些要点),点击可以直达。字符串方法是pandas.Series方法。
适用于pandas.Series或pandas.DataFrame列
要按定界符(delimiter)进行拆分,使用字符串方法str.split()。
以以下pandas.Series为例。
将定界符指定为第一个参数。一个pandas.Series元素作为拆分字符串的列表返回。
指定split = True作为参数可分为多个列并以pandas.DataFrame的形式获取。默认值为expand = False。
没有足够的行划分的元素为“无(None)”。
可以在列中指定获取的pandas.DataFrame的列名。
如果要通过将pandas.DataFrame的特定列拆分为多列来更新它,这会有些乏味。可能有更好的方法。
以先前创建的pandas.DataFrame为例。
在特定的列上使用str.split()获得一个拆分的pandas.DataFrame。
使用pd.concat()与原始pandas.DataFrame进行串联(联接),并使用drop()方法删除原始列。
如果剩余的列很少,则只能选择与pd.concat()串联(联接)时所需的列。
要重命名特定的列,请使用rename()方法。
参考文章
Pandas.DataFrame的行名和列名的修改
使用字符串方法str.extract()分割正则表达式。
以以下pandas.Series为例。
在第一个参数中指定正则表达式。对于每个与正则表达式中用()括起来的组部分匹配的字符串,均对其进行划分。
提取多个组时,无论参数expand如何,都将返回pandas.DataFrame。
如果不匹配,则为NaN。
如果只有一组,则当参数expand = True时返回pandas.DataFrame,如果expand = False则返回pandas.Series。
Expand = False是当前版本0.22.0中的默认值,但expand = True将是将来的默认值。
FutureWarning: currently extract(expand=None) means expand=False (return Index/Series/DataFrame)
but in a future version of pandas this will be changed to expand=True (return DataFrame)
如果对正则表达式模式使用命名组(?P …),则该名称将按原样是列名。
如果要通过将pandas.DataFrame的特定列划分为多个列来进行更新,请参考上面的str.split()示例。使用pd.concat()连接(联接)原始的pandas.DataFrame并使用drop()方法删除原始的列。
Pandas怎么使用分隔符或正则表达式将字符串拆分为多列的详细内容,希望对您有所帮助,信息来源于网络。