При использовании R удобно загружать "практические" наборы данных, используя
data(iris)
или
data(mtcars)
Есть что-то подобное для Панд? Я знаю, что могу загрузить любой другой метод, просто интересно, есть ли что-нибудь встроенное.
python
pandas
dataset
sample-data
каньон289
источник
источник
Ответы:
Поскольку я изначально написал этот ответ, я обновил его множеством способов, которые теперь доступны для доступа к образцам наборов данных в Python. Лично я предпочитаю использовать тот пакет, который уже использую (обычно seaborn или pandas). Если вам нужен автономный доступ, установка набора данных с Quilt кажется единственным вариантом.
Сиборн
В блестящий пакет для
seaborn
построения графиков встроено несколько наборов образцов данных.import seaborn as sns iris = sns.load_dataset('iris') iris.head()
Панды
Если вы не хотите импортировать
seaborn
, но по-прежнему хотите получить доступ к его наборам данных выборки , вы можете использовать подход @andrewwowens для выборки данных seaborn:iris = pd.read_csv('https://raw.githubusercontent.com/mwaskom/seaborn-data/master/iris.csv')
Обратите внимание, что типовые наборы данных, содержащие категориальные столбцы, имеют измененный тип столбца,
sns.load_dataset()
и результат может быть другим, если получить его напрямую из URL-адреса. Образцы данных iris и tips также доступны в репозитории pandas на github здесь .Примеры наборов данных R
Так как любой набор данных можно считывать с помощью
pd.read_csv()
, можно получить доступ примеров наборов данных всех R путем копирования URL - адресов из этого набора данных R хранилища .Дополнительные способы загрузки образцов данных R включают:
statsmodel
import statsmodels.api as sm iris = sm.datasets.get_rdataset('iris').data
а также
PyDataset
from pydataset import data iris = data('iris')
scikit-learn
scikit-learn
возвращает образцы данных в виде массивов numpy, а не фрейма данных pandas.from sklearn.datasets import load_iris iris = load_iris() # `iris.data` holds the numerical values # `iris.feature_names` holds the numerical column names # `iris.target` holds the categorical (species) values (as ints) # `iris.target_names` holds the unique categorical names
Одеяло
Quilt - это менеджер наборов данных, созданный для облегчения управления наборами данных. Он включает в себя множество типовых наборов данных, например несколько из репозитория образцов uciml . На странице быстрого запуска показано, как установить и импортировать набор данных диафрагмы:
# In your terminal $ pip install quilt $ quilt install uciml/iris
После установки набора данных он становится доступным локально, поэтому это лучший вариант, если вы хотите работать с данными в автономном режиме.
import quilt.data.uciml.iris as ir iris = ir.tables.iris()
Quilt также поддерживает управление версиями наборов данных и включает краткое описание каждого набора данных.
источник
rpy2
Модуль сделан для этого:from rpy2.robjects import r, pandas2ri pandas2ri.activate() r['iris'].head()
дает
Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 5.1 3.5 1.4 0.2 setosa 2 4.9 3.0 1.4 0.2 setosa 3 4.7 3.2 1.3 0.2 setosa 4 4.6 3.1 1.5 0.2 setosa 5 5.0 3.6 1.4 0.2 setosa
До pandas 0.19 вы могли использовать собственный
rpy
интерфейс pandas :import pandas.rpy.common as rcom iris = rcom.load_data('iris') print(iris.head())
дает
Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 5.1 3.5 1.4 0.2 setosa 2 4.9 3.0 1.4 0.2 setosa 3 4.7 3.2 1.3 0.2 setosa 4 4.6 3.1 1.5 0.2 setosa 5 5.0 3.6 1.4 0.2 setosa
rpy2
также предоставляет способ преобразованияR
объектов в объекты Python :import pandas as pd import rpy2.robjects as ro import rpy2.robjects.conversion as conversion from rpy2.robjects import pandas2ri pandas2ri.activate() R = ro.r df = conversion.ri2py(R['mtcars']) print(df.head())
дает
mpg cyl disp hp drat wt qsec vs am gear carb 0 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4 1 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4 2 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1 3 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1 4 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
источник
rcom.load_data('iris')
?pandas.rpy
было удалено в версии 0.20 . Для взаимодействия с Rrpy2
рекомендуется использовать этот вариант.Любой общедоступный файл .csv можно очень быстро загрузить в pandas, используя его URL-адрес. Вот пример использования набора данных iris, изначально взятого из архива UCI.
import pandas as pd file_name = "https://raw.githubusercontent.com/uiuc-cse/data-fa14/gh-pages/data/iris.csv" df = pd.read_csv(file_name) df.head()
Результатом является заголовок файла .csv, который вы только что загрузили с заданного URL.
>>> df.head() sepal_length sepal_width petal_length petal_width species 0 5.1 3.5 1.4 0.2 setosa 1 4.9 3.0 1.4 0.2 setosa 2 4.7 3.2 1.3 0.2 setosa 3 4.6 3.1 1.5 0.2 setosa 4 5.0 3.6 1.4 0.2 setosa
Запоминающийся короткий URL-адрес тоже есть
https://j.mp/iriscsv
. Этот короткий URL-адрес будет работать, только если он введен, а не скопирован.источник
iris.names