У меня есть файл csv в следующем формате:
15.55 28.65 2
14.9 27.55 2
14.45 28.35 2
14.15 28.8 2
13.75 28.05 2
Я хотел бы прочитать его и сохранить как X, Y, Clusters.
Я пробовал следующее, но не получаю данных
data = pd.read_csv(filename)
X = column(data, 0)
X = np.asarray(X)
Y = column(data,1)
Y = np.asarray(Y)
Пожалуйста, предоставьте минимальный воспроизводимый пример, неясно, как должен выглядеть результат.
@timgeb Вывод - это список из первого столбца и второго столбца, третьего столбца, вот и все.






Вы должны указать, что у вас нет заголовка в своем коде, тогда вы можете получить серию из фрейма данных, и если вам абсолютно нужен список, вы можете преобразовать его с помощью tolist()
Вот пример
import pandas as pd
df = pd.read_csv('sof.csv', header=None)
X, Y, Clusters = df[0], df[1], df[2]
print(X.tolist())
Вывод :
[15.55, 14.9, 14.45, 14.15, 13.75]
Используйте header=None и укажите аргумент names:
from io import StringIO
x = """15.55 28.65 2
14.9 27.55 2
14.45 28.35 2
14.15 28.8 2
13.75 28.05 2"""
# replace StringIO(x) with 'file.csv'
df = pd.read_csv(StringIO(x), delim_whitespace=True,
header=None, names=['X', 'Y', 'Clusters'])
print(df)
X Y Clusters
0 15.55 28.65 2
1 14.90 27.55 2
2 14.45 28.35 2
3 14.15 28.80 2
4 13.75 28.05 2
Затем используйте df['X'], df['Y'] или df['Clusters'] в зависимости от ситуации. В большинстве случаев не требуется дополнительных необходимость для преобразования в списки или массивы, хотя эти операции возможны:
df['X'].tolist() # convert series to list
df['X'].values # convert series to NumPy array
@timgeb просто сохраните результат в эти имена