gpt4 book ai didi

Python Pandas 将字符串和数字连接成一个字符串

转载 作者:太空宇宙 更新时间:2023-11-04 07:58:49 25 4
gpt4 key购买 nike

我正在使用 pandas 数据框并尝试将多个字符串和数字连接成一个字符串。

这行得通

df1 = pd.DataFrame({'Col1': ['a', 'b', 'c'], 'Col2': ['a', 'b', 'c']})
df1.apply(lambda x: ', '.join(x), axis=1)

0 a, a
1 b, b
2 c, c

如何使它像 df1 一样工作?

df2 = pd.DataFrame({'Col1': ['a', 'b', 1], 'Col2': ['a', 'b', 1]})
df2.apply(lambda x: ', '.join(x), axis=1)

TypeError: ('sequence item 0: expected str instance, int found', 'occurred at index 2')

最佳答案

考虑数据框 df

np.random.seed([3,1415])
df = pd.DataFrame(
np.random.randint(10, size=(3, 3)),
columns=list('abc')
)

print(df)

a b c
0 0 2 7
1 3 8 7
2 0 6 8

您可以在 lambda 之前使用 astype(str)

df.astype(str).apply(', '.join, 1)

0 0, 2, 7
1 3, 8, 7
2 0, 6, 8
dtype: object

使用理解

pd.Series([', '.join(l) for l in df.values.astype(str).tolist()], df.index)

0 0, 2, 7
1 3, 8, 7
2 0, 6, 8
dtype: object

关于Python Pandas 将字符串和数字连接成一个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44167704/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com