создание массива в цикле - PullRequest
0 голосов
/ 19 февраля 2019

Я хочу создать массив numpy путем анализа файла .txt.Файл .txt состоит из особенностей цветов ириса, разделенных запятыми.каждая строка имеет один пример цветка с 5 данными, разделенными 4 запятыми.первые 4 числа - это особенности, а последнее - это имя.Я анализирую .txt в цикле и хочу добавить (используя, вероятно, numpy.append) каждую строку проанализированных данных в массив numpy с именем feature_table.

, вот код;

import numpy as np
iris_data = open("iris_data.txt", "r")
for line in iris_data:
    currentline = line.split(",")
    #iris_data_parsed = (currentline[0] + " , " + currentline[3] + " , " + currentline[4])
    #sepal_length = numpy.array(currentline[0])
    #petal_width = numpy.array(currentline[3])
    #iris_names = numpy.array(currentline[4])
    feature_table = np.array([currentline[0]],[currentline[3]],[currentline[4]])
    print (feature_table)
    print(feature_table.shape)

, поэтомуЯ хочу создать массив с использованием только первых, четвертых и пятых данных в каждой строке, но я не могу заставить его работать так, как я хочу.пытался читать нудистские документы, но не мог этого понять.

1 Ответ

0 голосов
/ 19 февраля 2019

Хотя люди в комментариях правы в том, что вы нигде не сохраняете свои данные, я полагаю, что ваша проблема - неправильная конструкция np.array.Вы должны заключить все аргументы в список следующим образом:

feature_table = np.array([currentline[0],currentline[3],currentline[4]])

И избавиться от лишних [ и ] вокруг аргументов.

См. Официальный документ документация для большего количества примеров.В основном все входные данные должны быть сгруппированы / разделены, чтобы быть только одним аргументом, поскольку Python будет рассматривать другие аргументы как разные позиционные аргументы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...