python对应拼接两个或多个字符串数组

分享
程序员 2024-9-26 05:39:10 123 0 来自 中国
1.目的

输入a和b,返回c(对应组合的效果)
a=['a', 'b', 'c']b=['1', '2', '3']c=['a_1','b_2','c_3']2.办理

python对于许多这种看上去很简朴的变乱,着实反而没有直接的底子函数,不像R自带的paste()/paste0()就可以搞定,固然这紧张是由于他们对于数组/向量的运算机制差异。
1.for循环
lable=[]for i in range(len(m)):    id=m+'_'+n    lable.append(id)不过也可以简化这个代码, 通过zip()可以实现
lable=['_'.join(x) for x in list(zip(m,n))] # 一句代码实现上面的循环 zip是对应组合数组用的 join是数组和元组组合用的2.pandas/numpy内里的实现
如果自己这两列是dataframe内里的,那么在 Pandas 里 DataFrame 中实现归并两列文本的方式就多了,也更简朴
常见的两个字符串组合的方式全部可以用:
+ 运算符方法;df.map() 方法;df.apply() 方法;Series.str.cat() 方法];df.agg() 方法等。
举一个简朴的例子:
arr=[['a', 'b', 'c'],['1', '2', '3']]pd=pandas.DataFrame(data,columns=['a','b'])pd['c']=pd['a']+'_'+pd['c']其他pd中的方法可以拜见:
https://www.delftstack.com/zh/howto/python-pandas/how-to-combine-two-columns-of-text-in-dataframe-in-pandas/
本日又是学习python的一天呀~~
您需要登录后才可以回帖 登录 | 立即注册

Powered by CangBaoKu v1.0 小黑屋藏宝库It社区( 冀ICP备14008649号 )

GMT+8, 2024-11-22 11:35, Processed in 0.161798 second(s), 32 queries.© 2003-2025 cbk Team.

快速回复 返回顶部 返回列表