У меня есть файл CSV, в котором первые 8 строк объясняют файл, а данные начинаются с 10-й строки. Сначала я попробовал пропустить данные, однако при чтении файла возникли ошибки:
Я включил имена=диапазон(20), потому что ожидался меньший диапазон.
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import os # Check path
import csv
import glob
# Check path
current_path = os.getcwd()
print(current_path)
data = pd.read_csv('Events.csv', encoding = "utf-8", names = range (20))
Выход: Вывод был «s» для строки 1, столбец 1, и «NaN» для остальной части кадра данных, поскольку «utf-8» — это кодировка верхней части, а «cp1252» — это кодировка самих данных.
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0 с NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 1 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 2 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 3 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 4 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
Когда я открываю файл csv и удаляю первые несколько строк, я могу прочитать файл. Я не хочу открывать файл и удалять первые несколько строк, чтобы этот код работал, так как я хочу, чтобы этот код работал для аналогичных CSV-файлов, которые я ему предоставляю (файл меняется в зависимости от времени, когда он хранит события) .
Есть ли способ пройти первые несколько строк и просмотреть мои данные?
pd.read_csv('Events.csv', encoding = "utf-8", skiprows=8)
Вы бы получили ошибку, а не NaN, если бы кодировка была отключена, я почти уверен.
Я проверил кодировку: # Проверьте кодировку с помощью open('Events.csv') as f: print(f). Он дал мне одну кодировку: «cp1252», но я все еще получаю значения «NaN».
@MichelleBogush Судя по вашему комментарию в ответ на ответ Андреса, возможно, вам следует закрыть это
Пытаться
data = pd.read_csv('Events.csv', encoding = "utf-8", skiprows=10)
Пропуск строк не помогает, поскольку я считаю, что он не понимает, как просматриваются данные. Он выдает следующее: Безымянный: 0 0 NaN 1 NaN 2 NaN 3 NaN 4 NaN
Я думаю, что проблема не в кодировке, а в данных в первых нескольких строках, которые не имеют одинакового количества столбцов. Я начну новую тему.
Вы уверены, что ваш файл имеет две формы кодировки? Возможно, аргумент ключевого слова Skiprows для pd.read_csv() поможет.