Построение CSV-файла, где разделителем является ‘; ‘ (точка с запятой пробел)

#python #python-2.7 #matplotlib

#python #python-2.7 #matplotlib

Вопрос:

Я изучаю, как отображать объекты (CSV-файлы) на Python, используя import matplotlib.pyplot as plt .

 Column1;Column2;Column3;
1;4;6;
2;2;6;
3;3;8;
4;1;1;
5;4;2;
  

Я могу построить приведенный выше plt.plotfile('test0.csv', (0, 1), delimiter=';') , получив рисунок ниже.

введите описание изображения здесь

Я также могу отобразить эти данные, если изменю разделитель с ';' (точка с запятой) на ',' (запятая).

 Column1,Column2,Column3,
1,4,6,
2,2,6,
3,3,8,
4,1,1,
5,4,2,
  

использование plt.plotfile('test0.csv', (0, 1), delimiter=',') .

Но не удалось отобразить данные там, где разделитель '; ' (точка с запятой пробел), как показано ниже. Могу ли я по-прежнему использовать это matplotlib.pyplot или пришло время для чего-то другого?

 Column1; Column2; Column3; 
1; 4; 6; 
2; 2; 6; 
3; 3; 8; 
4; 1; 1; 
5; 4; 2; 
  

Ответ №1:

Итак, ошибка, которую выдает matplotlib, такова

  TypeError: "delimiter" must be a 1-character string
  

Что делает его очень маловероятным, что вы можете использовать '; ' . При попытке у меня также возникали ошибки delimiter=';' , хотя вы можете захотеть проверить, что это воспроизводимо.

Однако pandas отлично справляется с этим pd.read_csv , если у вас есть это доступно.

 import pandas as pd
alpha = pd.read_csv(filepath,delimiter=';')
alpha.Column1
0    1
1    2
2    3
3    4
4    5
Name: Column1, dtype: int64
  

Комментарии:

1. pandas также переносит функции построения matplotlib.