Я использовал панд для загрузки данных из файла dataSource.cvs
:есть ли какой-либо способ прямого чтения Dataframe Pandas в качестве обработчика файлов?
DF = pd.read_csv('dataSoruce.csv')
В панд я могу очистить данные, как заполнение недостающих значений с 0.
Далее я использую DF.to_csv('temp.csv', sep=',')
написать DF
как временный файл резюме, а затем использовать обработчик питон файл, чтобы открыть файл снова
hd = open('temp.csv')
for line in hd:
line = line.split(',').....
к Парс e данные и ассоциировать больше информации из других таблиц данных. Это работает. Однако, если я сразу делаю
hd = DF
Затем он показывает сообщение об ошибке, как
IndexError: list index out of range
Есть ли какие-либо способы, чтобы пропустить сохранение в CVS и читать CSV-файл? i.e непосредственно открыть pandas dataFrame
в качестве обработчика файлов?
Огромное спасибо!
Почему вы хотите это сделать? Почему вы не можете «связывать больше информации из других таблиц» только с помощью самого объекта DataFrame? Что именно вы делаете с временным CSV-файлом? – BrenBarn
Одна вещь: когда вы перебираете объект dataframe, вы просто перебираете имена колонок .. Они являются строками, поэтому, когда у вас есть метод '.' .split (',') '' ', вы разделяете имена столбцов Если у вас есть имя столбца '' 'col = 'something'''', тогда, когда вы его разделяете, вы получаете' '' 'somthing'.split ('. ')' '', Который просто [' something ' ]. Вероятно, вы пытаетесь проиндексировать этот массив, и это вызывает ошибку. Во всяком случае, с небольшим исследованием вы можете понять, что вы хотите делать в пандах, и если вы не можете узнать, что именно вы хотите, тогда С.О. slmost, конечно, есть ответ! – dermen
@dermen: Он выполняет итерацию над файлом, а не с DataFrame. – BrenBarn