我有一个类似以下的数据集:
0000000000000001,0
0000000000000010,0
0000000000000011,1
0000000000000100,1
0000000000000101,1
0000000000000110,0
0000000000000111,1
0000000000001000,0
0000000000001001,0
.
.
.
我想将每一行的第一列转换成逗号分隔,如下所示:
从0000000000000001,0
到0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0
以下代码有一个小问题:full_data
不是整数的2D numpy,而是字符串的1D。我不确定该如何解决。任何提示表示赞赏。
data = []
my_data = np.genfromtxt('file.csv', delimiter=',', dtype='str')[:,0]
for i in my_data:
x= np.asarray(i)
data.append(x.tolist())
full_data = np.asarray(data)
谢谢
答案 0 :(得分:2)
这是一种方法。
演示:
import numpy as np
data = []
my_data = np.genfromtxt(filename, delimiter=',', dtype='str')
data = [list(i) + [j] for i, j in my_data]
print(data)
输出:
[
['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0'],
['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0'],
['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '1', '1'],
['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', '1'],
['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '1', '1'],
['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '1', '0', '0'],
['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '1', '1', '1'],
['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', '0', '0'],
['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', '1', '0']
]