使用zip函数df['full_name']=zip(df['name'],df['姓氏'])有什么好处



我正在努力理解。

使用zip函数的优点是什么

df['full_name']=zip(df['name'],df['last name'])

不是

df['full_name']=df['name']+ " " + df['last name']

对于namelast name的元组使用第一种解决方案(为避免zip对象而转换为列表):

df['full_name']= list(zip(df['name'],df['last name']))

对于由空格连接的列使用:

df['full_name']=df['name']+ " " + df['last name']

:

df = pd.DataFrame({'name':['name1','name2'],
'last name':['last  name1','last name2']})
df['full_name0']= zip(df['name'],df['last name'])
df['full_name1']= list(zip(df['name'],df['last name']))
df['full_name2']=df['name']+ " " + df['last name']
print (df)
name    last name                          full_name0  
0  name1  last  name1  <zip object at 0x000000000F975DC0>   
1  name2   last name2  <zip object at 0x000000000F975DC0>   
full_name1         full_name2  
0  (name1, last  name1)  name1 last  name1  
1   (name2, last name2)   name2 last name2  
print (type(df['full_name1'].iat[0]))
<class 'tuple'>
print (type(df['full_name2'].iat[0]))
<class 'str'>

在我看来,重要的不是zip。

df [' full_name '] = zip (df("名字"),df['姓名'])

full_name中的元素为元组

df [' full_name '] = df("名字")+";";+ df['姓']

如果您这样写,则列full_name中的元素是字符串。

字符串更适合显示和打印,但是它的一些结构信息丢失了。

例如,name为"A", last name为"B C",如果用空格连接,则为"A B C"。对于人来说没问题,但是对于机器来说,它无法分辨是"A""B C"还是"A B""C",因为"结构信息"。

所以选择哪一个取决于你的目的。

zip用于将两个字典项合并为一个

mylist=list(zip(dict1,dict2))

最新更新