Доступ к данным с головой внутри словаря - PullRequest
0 голосов
/ 25 мая 2018

Я читаю несколько файлов XLS через

import os
import pandas as pd

path = r'pathtofolder'
files = os.listdir(path=path)

dataframes = {}

for file in files:
    filepath = path + '\\' + file
    if filepath[-3:] == 'xls':
        print(file)
        dataframes[file] = pd.read_excel(filepath)

Однако по какой-то причине я не могу получить доступ к фреймам данных внутри словарей, так как .head (), похоже, не работает:

for file, dataframe in dataframes.items():
    dataframe.head()

Этот код, похоже, ничего не делает в Jupyter.Однако, когда я печатаю () dataframe, я получаю pandas.core.frame.DataFrame, поэтому голова должна работать, верно?

1 Ответ

0 голосов
/ 25 мая 2018

раньше не работал с фреймами данных Python, но я не думаю, что ваш цикл for даст вам какой-либо вывод таким образом.Это просто бегущий цикл, который заканчивается, когда вычисляется последняя голова.Вы можете просто использовать print (), чтобы просмотреть свои выходные данные.

for file, dataframe in mydict.items():
    print(dataframe.head())

Или создать список данных для dataframe.head () многократного использования, как показано ниже.Вы в любое время вводите имя списка в консоли, чтобы просмотреть его позже.Простите за код для создания словаря данных.

import pandas as pd
from sklearn import datasets

iris = pd.DataFrame(datasets.load_iris().data)
digits = pd.DataFrame(datasets.load_digits().data)
diabetes = pd.DataFrame(datasets.load_diabetes().data)

dataframes={'a':iris,'b':digits,'c':diabetes} #create a dictionary of dataframes 

list_heads=[]   #create a list of dataframe head()
    for i in dataframes:    
        list_heads.append(dataframes[i].head())
    list_heads
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...