Как собрать данные временных рядов для контролируемой классификации из словарного вывода в Python
Может кто-нибудь, пожалуйста, помогите мне! У меня есть словарь с ключом и значениями. Каждый ключ - это метка кластера, а значения, связанные с ключами, - это точки данных в этом кластере. Каждая точка данных - это список из 60 столбцов (т. Е. Данные временного ряда длиной 60). Я хочу собрать эти ряды временных рядов для контролируемой классификации таким образом, чтобы точка данных каждого временного ряда имела ключ (скажем, 0) в качестве своего последнего значения в строке в качестве своего класса. (Например: 0,1,0.3,0.5, 0) где последнее значение ноль является значением класса. Вот часть моих реальных данных.
{0: array([[ 28.7812, 34.4632, 31.3381, ..., 33.3759, 25.4652, 25.8717],
[ 24.8923, 25.741 , 27.5532, ..., 34.2484, 32.1005, 26.691 ],
[ 31.3987, 30.6316, 26.3983, ..., 33.9002, 29.5446, 29.343 ],
...,
[ 24.4293, 39.7616, 40.1207, ..., 42.3223, 31.9421, 32.8973],
[ 32.3175, 39.9719, 40.6855, ..., 28.8281, 41.7112, 35.3453],
[ 25.7836, 34.1285, 42.6593, ..., 34.4315, 32.155 , 34.8388]]),
{1: array([[ 35.7709, 34.396 , 35.2249, ..., 32.4859, 30.7772, 24.5854],
[ 24.9706, 33.8315, 46.9423, ..., 24.1889, 11.4137, 13.1961],
[ 35.5351, 41.7067, 39.1705, ..., 37.7721, 37.2248, 32.9494],
...,
[ 28.0747, 41.7835, 42.1198, ..., 38.0344, 46.4582, 44.4323],
[ 33.6696, 38.6754, 39.7419, ..., 34.9395, 36.9095, 39.7494],
[ 30.5729, 41.0741, 44.9793, ..., 24.353 , 19.7201, 12.7513]])}
Проще говоря, меня интересует только наличие значений для каждой строки без скобок, а затем добавление их в строку с ключом в качестве последнего числа в строке.
2 ответа
Я не уверен, что правильно понял ваш формат ввода...
input = {0: [['0', '0']], 1: [['0', '0']]}
output = []
for key in input.keys():
input[key].append(key)
output.append(input[key])
old_cluster = []
для меня в диапазоне (0, len (toy_data)):
d_cluster =np.append(toy_data[i], int(labels[i]))
f_cluster= d_cluster.tolist()
old_cluster.append(f_cluster)
data_cluster = np.asarray (old_cluster)
Записывает данные в текстовый файл без скобок, каждая точка на строке с
его метка кластера в качестве последней точки.
с открытым ('mytest.txt','w') в качестве выходного файла:
for item in data_cluster:
outfile.write("%s\n" % ','.join(map(str,item)))