NameError:名称“ players_data”未定义

时间:2020-02-08 17:52:55

标签: python-3.x jupyter-notebook

我收到此错误。如何定义 players_data

NameError跟踪(最近一次通话) 在
----> 1个数据= np.vstack((asia [1:],eu [1:],na [1:],oc [1:],sea [1:],players_data [1:]))
2 df = pd.DataFrame({data [0,i]:data [1 :, i] for i in range(data.shape [1])})
3 m = asfloat(data [1 :,:4])

NameError:名称players_data未定义

asia = open_exl('pubg_as.xls', 0)
eu = open_exl('pubg_eu.xls', 0)
na = open_exl('pubg_na.xls', 0)
oc = open_exl('pubg_oc.xls', 0)
sea = open_exl('pubg_sea.xls', 0)

# Load all data
all_data = np.genfromtxt('PUBG_Player_Statistics.csv', delimiter=',')
all_data[:, 28] = all_data[:, 28] * 100

# Train data
train_data = all_data[1:2000, :][:, [3, 2, 28, 9]]
test_data = all_data[2000:, :][:, [3, 2, 28, 9]]

data = np.vstack((asia[1:], eu[1:], na[1:], oc[1:], sea[1:], players_data[1:]))
df = pd.DataFrame({data[0, i]: data[1:, i] for i in range(data.shape[1])})
m = asfloat(data[1:, :4])

1 个答案:

答案 0 :(得分:0)

很难知道存储在players_data中的原始值是什么,因为这是另一个用户的不完整代码;但是,根据他们的所作所为,我的猜测是players_data是:

players_data = train_data

但是,为什么?

他们使用kmeans算法创建了代表以下类别的6个聚类:

['Normal player', 'Waller', 'Experienced Player', 'Both', 'God', 'Aimbot']

在vstack中使用的前5个变量中,它们具有来自5个服务器中最佳播放器的信息。他们想使用这些信息,并与“普通玩家”一起利用。

最后,他们既没有使用“ train_data”也没有使用“ test_data”;但是,在README.md中,他们提到了以下内容:

我们混合来自普通数据集的数据的原因是为了增加普通玩家的密度,并使聚类更加紧密。经过测试,我们认为2000行数据具有最佳性能。

需要注意的重要一点是,在训练和测试数据中,他们选择了4列:

[3, 2, 28, 9]

与“最佳表现者文件”中使用的列相同

def open_exl(address, idx):
    data = xlrd.open_workbook(address)
    table = data.sheets()[idx]
    rows = table.nrows
    ct_data = []
    for row in range(rows):
        ct_data.append(table.row_values(row))
    return np.array(ct_data)[:, :4]

由于代码不一致,因此可能无法获得结果;但是,这似乎是一个很好的机会来处理数据并将您获得的结果与他们先前的调查进行比较。