繁体   English   中英

如何将字符串值插入python pandas上的特定列值?

[英]How to insert string value into specific column value on python pandas?

我有以下数据框。

import pandas as pd
data=['ABC1','ABC2','ABC3','ABC4']
data = pd.DataFrame(data,columns=["Column A"])



    Column A
0   ABC1
1   ABC2
2   ABC3
3   ABC4

如何在数据A列上插入“-” ABC?

输出:

  Column A
0   ABC-1
1   ABC-2
2   ABC-3
3   ABC-4

使用replace方法作为正则表达式和inplace方法的最简单解决方案,以使其在数据框中永久存在。

>>> data['Column A'].replace(['ABC'], 'ABC-', regex=True, inplace=True)
print(data)
  Column A
0    ABC-1
1    ABC-2
2    ABC-3
3    ABC-4

这是一种仅假设在破折号后加数字的方式:

df['ColumnA'].str.split('([A-z]+)(\d+)').str.join('-').str.strip('-')

0    ABC-1
1    ABC-2
2    ABC-3
3    ABC-4

另一个例子:

df = pd.DataFrame({'ColumnA':['asf1','Ads2','A34']})

会给:

df['ColumnA'].str.split('([A-z]+)(\d+)').str.join('-').str.strip('-')

0    asf-1
1    Ads-2
2     A-34

一个可能的解决方案是

data['Column A'] = data['Column A'].str[:-1] + '-' + data['Column A'].str[-1]
print (data)
#  Column A
#0    ABC-1
#1    ABC-2
#2    ABC-3
#3    ABC-4

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM