在DataFrame列中将字符串转换为numpy.array可以通过使用apply函数和numpy的fromstring函数来实现。
首先,使用apply函数将每个字符串转换为numpy.array。apply函数可以对DataFrame的每一列或每一行应用一个自定义的函数。对于每个字符串,我们可以使用lambda函数将其转换为numpy.array。假设要将字符串转换为float类型的numpy.array,可以使用以下代码:
import numpy as np
import pandas as pd
# 创建一个示例DataFrame
df = pd.DataFrame({'col1': ['1.0, 2.0, 3.0', '4.0, 5.0, 6.0', '7.0, 8.0, 9.0']})
# 将字符串转换为numpy.array的函数
def str_to_array(s):
return np.fromstring(s, sep=', ')
# 在DataFrame的每个元素上应用函数
df['col1'] = df['col1'].apply(lambda x: str_to_array(x))
print(df)
输出结果为:
col1
0 [1.0, 2.0, 3.0]
1 [4.0, 5.0, 6.0]
2 [7.0, 8.0, 9.0]
在这个例子中,我们使用lambda函数将每个字符串传递给str_to_array函数,该函数使用numpy的fromstring函数将字符串转换为numpy.array。最后,将转换后的numpy.array赋值回DataFrame的相应列。
这种方法适用于将字符串转换为任何类型的numpy.array,只需根据需要修改str_to_array函数中的sep参数和numpy的fromstring函数的dtype参数。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云