使用python弹出数据帧单元格中的第一个元素

使用python弹出数据帧单元格中的第一个元素,python,regex,pandas,dataframe,Python,Regex,Pandas,Dataframe,有一个带有值的数据帧 name zip 0 newyork newyorkZip codes,10009,10001,10002,10003 1 London londonZip codes,25103,25126 如何从邮政编码栏中弹出纽约邮政编码、“伦敦邮政编码” 预期产量 name zip 0 newyork 10009,10001,10002,10003 1 London 25103

有一个带有值的数据帧

     name         zip
0   newyork     newyorkZip codes,10009,10001,10002,10003
1   London      londonZip codes,25103,25126
如何从邮政编码栏中弹出纽约邮政编码、“伦敦邮政编码”

预期产量

     name         zip
0   newyork     10009,10001,10002,10003
1   London      25103,25126
试试这个

df['zip']=df['zip'].str.split(',',expand=True).iloc[:,1:].fillna('').apply(','.join, axis=1).str.rstrip(',')
输出:

    name        zip
0   newyork     10009,10001,10002,10003
1   London      25103,25126

尝试
str.partition

df['zip'] = df['zip'].str.partition(',')[2]

Out[132]:
      name                      zip
0  newyork  10009,10001,10002,10003
1   London              25103,25126

试试这个,它有点不合时宜,但应该能用

zip_updated = []
for i in df['zip']:
    i = ','.join(i.split(',')[1:])
    zip_updated.append(i)

df['zip_updated'] = zip_updated

之后,您可以继续使用.drop()函数删除旧的zip列,请尝试以下操作。使用正则表达式

df['zip']=df['zip'].replace(regex=True,to_replace=r'([a-zA-Z]+ |[a-zA-Z]+,){1,}',value=r'')
df的输出如下所示

    name        zip
0   newyork     10009,10001,10002,10003
1   London      25103,25126

请在您的文章中的代码标签中添加预期的输出。添加的@RavinderSingh13series对象没有属性split@user12157180现在检查请检查我的预期output@user12157180现在检查此onelinerseries对象是否没有属性zip