पंडों में नमूना डेटासेट


93

आर का उपयोग करते समय "प्रैक्टिस" डेटासेट्स को लोड करना आसान है

data(iris)

या

data(mtcars)

क्या पंडों के लिए भी कुछ ऐसा ही है? मुझे पता है कि मैं किसी भी अन्य विधि का उपयोग करके लोड कर सकता हूं, अगर कुछ भी बनाया गया है तो बस उत्सुक।


जवाबों:


113

चूंकि मैंने मूल रूप से यह उत्तर लिखा था, इसलिए मैंने इसे कई तरीकों से अपडेट किया है जो अब पायथन में नमूना डेटा सेट तक पहुंचने के लिए उपलब्ध हैं। व्यक्तिगत रूप से, मैं जो भी पैकेज पहले से उपयोग कर रहा हूं (आमतौर पर समुद्री या पांडा) के साथ रहना पसंद करता हूं। यदि आपको ऑफ़लाइन पहुंच की आवश्यकता है, तो रजाई के साथ डेटा सेट स्थापित करना एकमात्र विकल्प लगता है।

Seaborn

शानदार प्लॉटिंग पैकेज seabornमें कई अंतर्निहित नमूना डेटा सेट हैं।

import seaborn as sns

iris = sns.load_dataset('iris')
iris.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

पांडा

यदि आप आयात नहीं करना चाहते हैं seaborn, लेकिन फिर भी इसके सैंपल डेटा सेट्स तक पहुंचना चाहते हैं , तो आप @ andrewwowens के दृष्टिकोण को सीबोनल सैंपल डेटा के लिए उपयोग कर सकते हैं:

iris = pd.read_csv('https://raw.githubusercontent.com/mwaskom/seaborn-data/master/iris.csv')

ध्यान दें कि श्रेणीबद्ध कॉलम वाले नमूना डेटा सेट उनके स्तंभ प्रकार द्वारा संशोधित किए गए हैंsns.load_dataset() और परिणाम सीधे यूरिया से प्राप्त करने के समान नहीं हो सकता है। आईरिस और टिप्स सैंपल डेटा सेट भी यहां पांडा गिथब रेपो में उपलब्ध हैं

नमूना डेटासेट

चूँकि किसी भी डेटासेट के माध्यम से पढ़ा जा सकता है 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 सीखने

scikit-learn पंडों के डेटा फ्रेम के बजाय सैंपल एरेज़ के रूप में नमूना डेटा लौटाता है।

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

रजाई

डेटासेट प्रबंधन की सुविधा के लिए रजाई एक डाटासेट प्रबंधक है। इसमें कई सामान्य नमूना डेटासेट शामिल हैं, जैसे कि uciml नमूना रिपॉजिटरी से कईजल्दी शुरू पेज से पता चलता है स्थापित करने और आईरिस डेटा सेट आयात करने का तरीका:

# In your terminal
$ pip install quilt
$ quilt install uciml/iris

डेटासेट स्थापित करने के बाद, यह स्थानीय रूप से सुलभ है, इसलिए यदि आप ऑफ़लाइन डेटा के साथ काम करना चाहते हैं तो यह सबसे अच्छा विकल्प है।

import quilt.data.uciml.iris as ir

iris = ir.tables.iris()
   sepal_length  sepal_width  petal_length  petal_width        class
0           5.1          3.5           1.4          0.2  Iris-setosa
1           4.9          3.0           1.4          0.2  Iris-setosa
2           4.7          3.2           1.3          0.2  Iris-setosa
3           4.6          3.1           1.5          0.2  Iris-setosa
4           5.0          3.6           1.4          0.2  Iris-setosa

रजाई भी डाटासेट संस्करण का समर्थन करते हैं और प्रत्येक डाटासेट का एक संक्षिप्त विवरण शामिल करते हैं।


10
जवाब नहीं होना चाहिए सिर्फ नहीं, वहाँ एक आसान "अभ्यास" डेटासेट नहीं है जिसे आप पांडा के साथ लोड कर सकते हैं।
जियाकोमो

15

इसके लिए 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

पांडा 0.19 तक आप पांडा के अपने rpyइंटरफेस का उपयोग कर सकते हैं :

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 एक तरीका भी प्रदान करता है :

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

1
सुझाव के लिए धन्यवाद। मैं यह कर रहा था लेकिन यह "सहजता" का उल्लंघन करता है कि डेटा आर में उपलब्ध है। यह एक समाधान है जो इसे हालांकि हो जाता है!
canyon289

3
हम्म? इतनी मुश्किल क्या है rcom.load_data('iris')?
unutbu

कुछ भी नहीं, मुझे एहसास है कि मैं बहुत चुस्त हो सकता हूं। मैं जवाब की सराहना करता हूं!
कैन्योन 289 21

1
ध्यान दें कि 0.20 में हटा दियाpandas.rpy गया था । आर के साथ इंटरफेस करने के लिए, अनुशंसित विकल्प है। rpy2
joelostblom

13

किसी भी युवा के पास उपलब्ध .csv फ़ाइल को उसके URL का उपयोग करके बहुत तेज़ी से पांडा में लोड किया जा सकता है। यहाँ मूल रूप से यूसीआई संग्रह से आईरिस डेटासेट का उपयोग करने का एक उदाहरण है।

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 केवल तभी काम करेगा जब वह टाइप किया गया हो और कॉपी-पेस्ट न किया गया हो।


वेबसाइट नीचे नहीं है। चेक archive.ics.uci.edu/ml/datasets/Iris विवरण, या डाउनलोड के लिएiris.names
zhazha

0

बिल्ट पांडा का डाटाफ्रेम का परीक्षण बहुत सुविधाजनक है।

makeMixedDataFrame ():

In [22]: import pandas as pd

In [23]: pd.util.testing.makeMixedDataFrame()
Out[23]:
     A    B     C          D
0  0.0  0.0  foo1 2009-01-01
1  1.0  1.0  foo2 2009-01-02
2  2.0  0.0  foo3 2009-01-05
3  3.0  1.0  foo4 2009-01-06
4  4.0  0.0  foo5 2009-01-07

अन्य परीक्षण DataFrame विकल्प ame

makeDataFrame ():

In [24]: pd.util.testing.makeDataFrame().head()
Out[24]:
                   A         B         C         D
acKoIvMLwE  0.121895 -0.781388  0.416125 -0.105779
jc6UQeOO1K -0.542400  2.210908 -0.536521 -1.316355
GlzjJESv7a  0.921131 -0.927859  0.995377  0.005149
CMhwowHXdW  1.724349  0.604531 -1.453514 -0.289416
ATr2ww0ctj  0.156038  0.597015  0.977537 -1.498532

makeMissingDataframe ():

In [27]: pd.util.testing.makeMissingDataframe().head()
Out[27]:
                   A         B         C         D
qyXLpmp1Zg -1.034246  1.050093       NaN       NaN
v7eFDnbQko  0.581576  1.334046 -0.576104 -0.579940
fGiibeTEjx -1.166468 -1.146750 -0.711950 -0.205822
Q8ETSRa6uY  0.461845 -2.112087  0.167380 -0.466719
7XBSChaOyL -1.159962 -1.079996  1.585406 -1.411159

makeTimeDataFrame ():

In [28]: pd.util.testing.makeTimeDataFrame().head()
Out[28]:
                   A         B         C         D
2000-01-03 -0.641226  0.912964  0.308781  0.551329
2000-01-04  0.364452 -0.722959  0.322865  0.426233
2000-01-05  1.042171  0.005285  0.156562  0.978620
2000-01-06  0.749606 -0.128987 -0.312927  0.481170
2000-01-07  0.945844 -0.854273  0.935350  1.165401
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.