【发布时间】:2019-11-03 16:27:41
【问题描述】:
我在一个 txt 文件中有一个数据集,它有 373 行和 3 列。我的老师让我创建 2 个数组。'array1' 存储数据集的所有行,它们的第三列的值为 1,' array2' 在 column2 存储编号为 2 的每一行。数组必须是 numpy 数组。 我试过 'class1 = np.zeros(len(dataset)).reshape(len(dataset)//3,3)' 但我收到错误消息: 'ValueError:无法将大小为 373 的数组重塑为形状 (124,3)' 我尝试了各种不同的变化。但是我找不到一种方法来制作 2D 工作。我只设法使用以下代码将列 number1 存储在两个数组上:
'''
import numpy as np
dataset = np.loadtxt("first_attempt_dataset.txt")
class1 = np.zeros(len(dataset))
class2 = np.zeros(len(dataset))
for i in range(0,len(dataset)):
if dataset[i,2] == 1:
class1[i] = dataset[i][1]
elif dataset[i,2] == 2:
class2[i] = dataset[i][1]
class1 = class1[class1 != 0] #delete the remained zeros from declaration
class2 = class2[class2 != 0]
'''
如何存储每一列而不是只存储 1 列?
【问题讨论】:
标签: python arrays python-3.x numpy