我试图根据列质量设置新的变量“ not_good”,“ good”和“ very good”。 因此,在数据集中的每一行中,我仅在其中之一中具有“ 1”,而在其余两个变量中仅具有两个“ 0”。 我使用了上面的代码,
for i in range(1599):
if (data.quality[i] == 3) or (data.quality[i] == 4):
data.not_good = 1
if (data.quality[i] == 5) or (data.quality[i] == 6):
data.good = 1
if (data.quality[i] == 7) or (data.quality[i] == 8):
data.very_good =1
单元格运行良好,但我发现所有行中添加的所有变量均等于1。
答案 0 :(得分:0)
您有一个对象数据。 该数据对象具有4个变量:
not_good : int
good : int
very_good : int
quality : int[] # int array
只要其中一个数据不是“好”,“好”或“非常好”,您到处都有一个。 当您选择的类型不是int而是int []时,可以解决该问题,代码如下所示:
data_length = 1599
data.not_good = [0]*data_length
data.good = [0]*data_length
data.very_good = [0]*data_length
for i in range(data_length):
if (data.quality[i] == 3) or (data.quality[i] == 4):
data.not_good[i] = 1
if (data.quality[i] == 5) or (data.quality[i] == 6):
data.good[i] = 1
if (data.quality[i] == 7) or (data.quality[i] == 8):
data.very_good[i] =1
答案 1 :(得分:0)