[英]split a dataframe column into equal parts
我想将此专栏分为三部分:城市,州,邮编。 我当时正在考虑这样的事情: https : //pandas.pydata.org/pandas-docs/stable/genic/pandas.Series.str.split.html 。 但是,我认为该专栏需要先发表系列文章? 任何帮助都会很棒。
import pandas as pd
suite_list
hospital_list =pd.DataFrame(suite_list, columns=['name', 'address_1', 'address_2', 'city_state_zip', 'phone'])
city_state_zip
示例=亚利桑那州Sahuarita,85629。我希望“ Sahuarite”,“ AZ”,“ 85629”在DataFrame中显示为单独的列。
你可以尝试这样
df = pd.DataFrame({'Name' : ('john','doe','smith'), 'address_1' : (105,305,505), 'address_2' : ('path','lane','route'),\
'city_state_zip': ('Sahuarita, AZ, 85629', 'Sahuarita1, AZ1, 75629', 'Sahuarita2, AZ2, 65629')})
df
Name address_1 address_2 city_state_zip
0 john 105 path Sahuarita, AZ, 85629
1 doe 305 lane Sahuarita1, AZ1, 75629
2 smith 505 route Sahuarita2, AZ2, 65629
然后尝试
df["col1"],df["col2"],df["col3"] = zip(*df["city_state_zip"].str.split().tolist())
输出df
将是
Name address_1 address_2 city_state_zip col1 col2 col3
0 john 105 path Sahuarita, AZ,85629 Sahuarita AZ 85629
1 doe 3 05 lane Sahuarita1, AZ1,5629 Sahuarita1 AZ1 75629
2 smith 505 route Sahuarita2, AZ2,65629 Sahuarita2 AZ2 65629
这应该给你想要的东西。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.