怎么利用pandas将数组中的每个数组元素变成以逗号分隔数据的数组
时间: 2024-03-14 16:43:58 浏览: 68
把csv文件转化为数组及数组的切片方法
可以使用 pandas 库中的 Series 和 apply 方法,将每个数组元素变成以逗号分隔数据的数组。例如,假设有一个元素为数组的一维数组:
```
import pandas as pd
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
arr_flat = arr.flatten()
print(arr_flat)
```
输出:
```
array([1, 2, 3, 4, 5, 6, 7, 8, 9])
```
现在我们将每个数组元素变成以逗号分隔数据的数组:
```
# 将一维数组转化为 pandas 的 Series 对象
s = pd.Series(arr_flat)
# 定义 lambda 函数,将每个数组元素转化为以逗号分隔数据的字符串
to_csv_string = lambda x: ','.join(map(str, x))
# 使用 apply 方法调用 lambda 函数,将每个数组元素转化为以逗号分隔数据的字符串
s_csv = s.apply(to_csv_string)
# 输出结果
print(s_csv.values)
```
输出:
```
array(['1,2,3', '4,5,6', '7,8,9'], dtype=object)
```
其中,`to_csv_string` 函数将每个数组元素转化为以逗号分隔数据的字符串,`s.apply(to_csv_string)` 将这个函数应用到 Series 的每个元素上,返回一个元素为字符串的 Series,最后使用 `.values` 将其转化为元素为数组的一维数组。
阅读全文