I have a pandas data frame with 2 columns: {'A':[1, 2, 3],'B':[4, 5, 6]}
I want to create a new column where: {'C':[1 4,2 5,3 6]}
df = pd.DataFrame({'A':[1, 2, 3],'B':[4, 5, 6]})
Keep in mind, per your expected output, [1 4,2 5,3 6]
isn't a thing. I'm interpreting you to mean either [(1, 4), (2, 5), (3, 6)]
or ["1 4", "2 5", "3 6"]
df.apply(lambda x: tuple(x.values), axis=1)
0 (1, 4)
1 (2, 5)
2 (3, 6)
dtype: object
df.apply(lambda x: ' '.join(x.astype(str)), axis=1)
0 1 4
1 2 5
2 3 6
dtype: object
If you don't mind zip object, then you can use df['C'] = zip(df.A,df.B)
. If you like tuple then you can cast zip object with list()
. Please refer to this post . It's pretty handy to use zip in this kind of scenarios.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.