[英]If value in column A is not null then insert specific string in column B. 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.