2016-11-15 3 views
-1

Я новичок в Python, я давно использую Matlab. Большинство функций, которые предлагает Python, превосходят возможности Matlab, но я по-прежнему скучаю по некоторым признакам структур Matlab!Anidate pandas dataframes в объекте python

Есть ли аналогичный способ группировки независимых блоков данных панд в один объект? Это было бы для меня удобнее, так как иногда мне приходится считывать данные из разных мест, и я хотел бы получить столько независимых фреймов данных, сколько мест размещения, и, если возможно, в один объект.

Спасибо!

+1

Пожалуйста, проверьте [Как сделать хорошие примеры воспроизводимых панд] (http://stackoverflow.com/questions/20109391/how-to-make-good-reproducible-pandas -examples) – jezrael

+0

Может быть http://pandas.pydata.org/pandas-docs/stable/generated/pandas.concat.html что вы ищите? – gnebehay

ответ

1

Я не уверен, что полностью понимаю ваш вопрос, но здесь я думаю, что вы идете.

Вы можете использовать многие различные структуры данных python для организации кадровых фреймов pandas в одну группу (List, Dictionary, Tuple). Список наиболее распространен, но словарь также будет работать хорошо, если вам нужно будет называть его по имени позже, а не положением.

** Примечание: В этом примере используется CSV-файлов, эти файлы могут быть любой И.О., что панды поддерживает (CSV, Excel, TXT, или даже вызов к базе данных)

import pandas as pd 

files = ['File1.csv', 'File2.csv', 'File3.csv'] 

frames = [frames.append(pd.read_csv(file)) for file in files] 
single_df = pd.concat(frames) 

Вы можете использовать каждый кадр независимо, вызывая его из списка. Ниже будет возвращать dataframe File1.csv

frames[0] 
Смежные вопросы