Python 在满足一定条件的情况下,如何增加熊猫的列数?
我有一个数据帧,例如:Python 在满足一定条件的情况下,如何增加熊猫的列数?,python,pandas,string,dataframe,Python,Pandas,String,Dataframe,我有一个数据帧,例如: ID Description 1 Long lasting glasses,Fire resistant,Polarizer 我希望每个描述列只包含10个字符的最大长度,如果它超过新的列应该形成。例如: ID Description Description2 Description3 Description4 Description5 1 Long Lasti ng glasses ,Fire resi
ID Description
1 Long lasting glasses,Fire resistant,Polarizer
我希望每个描述列只包含10个字符的最大长度,如果它超过新的列应该形成。例如:
ID Description Description2 Description3 Description4 Description5
1 Long Lasti ng glasses ,Fire resi stant,Pola rizer
+
我们可以提取
正则表达式模式中所有出现的捕获组,然后取消堆栈
以重塑
df['Description'].str.extractall(r'(.{10}|.+$)')[0].unstack()
正则表达式详细信息:
:第一个捕获组(.{10}|.+$)
:将任何字符精确匹配10次(第一个备选方案){10}
:将任何字符匹配一次或多次(第二种选择)+
提取
正则表达式模式中所有出现的捕获组,然后取消堆栈
以重塑
df['Description'].str.extractall(r'(.{10}|.+$)')[0].unstack()
正则表达式详细信息:
:第一个捕获组(.{10}|.+$)
:将任何字符精确匹配10次(第一个备选方案){10}
:将任何字符匹配一次或多次(第二种选择)+
请看@Ch3steR它不是一个傻瓜。@Ch3steR,我完全不同意!你知道一个在长度上分裂的正则表达式吗???重新开放的家伙。对不起,我跳枪了。我的错。@Ch3steR这不是骗局。@Ch3steR,我完全不同意!你知道一个在长度上分裂的正则表达式吗???重新开放的家伙。对不起,我跳枪了。我的错。谢谢@Ch3steR是的,挤压也会很好地工作。列名也很重要,有什么想法吗it@AtomStore我们可以在列名中添加前缀。请检查
df['Description'].str.extractall(r'(.{10}.+$)[0].unstack().add_prefix('Description')
谢谢@Ch3steR。列名也很重要,您有什么想法吗it@AtomStore我们可以在列名中添加前缀。请检查df['Description'].str.extractall(r'(.{10}.+$)[0].unstack().add_前缀('Description')