R kullanırken, "alıştırma" veri kümelerini kullanarak
data(iris)
veya
data(mtcars)
Pandalar için benzer bir şey var mı? Başka bir yöntem kullanarak yükleyebileceğimi biliyorum, sadece yerleşik bir şey olup olmadığını merak ediyorum.
R kullanırken, "alıştırma" veri kümelerini kullanarak
data(iris)
veya
data(mtcars)
Pandalar için benzer bir şey var mı? Başka bir yöntem kullanarak yükleyebileceğimi biliyorum, sadece yerleşik bir şey olup olmadığını merak ediyorum.
Yanıtlar:
Bu cevabı orijinal olarak yazdığımdan beri, Python'daki örnek veri kümelerine erişmek için mevcut olan birçok yolla güncelledim. Kişisel olarak, halihazırda kullandığım pakete (genellikle deniz boğazı veya pandalar) bağlı kalma eğilimindeyim. Çevrimdışı erişime ihtiyacınız varsa, veri setini Quilt ile yüklemek tek seçenek gibi görünüyor.
Mükemmel çizim paketi seaborn
, birkaç yerleşik örnek veri kümesine sahiptir.
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
İçe aktarmak istemiyor seaborn
ancak yine de örnek veri kümelerine erişmek istiyorsanız , seaborn örnek verileri için @ andrewwowens'in yaklaşımını kullanabilirsiniz:
iris = pd.read_csv('https://raw.githubusercontent.com/mwaskom/seaborn-data/master/iris.csv')
Kategorik sütunları içeren örnek veri kümelerinin sütun türlerinin tarafından değiştirildiğinisns.load_dataset()
ve sonucun doğrudan url'den alınmasıyla aynı olmayabileceğini unutmayın. İris ve ipuçları örnek veri setleri de repo github pandalar mevcuttur burada .
Herhangi bir veri seti üzerinden okunabildiğinden pd.read_csv()
, bu R veri seti havuzundan URL'leri kopyalayarak tüm R'nin örnek veri setlerine erişmek mümkündür .
R örnek veri kümelerini yüklemenin ek yolları şunları içerir:
statsmodel
import statsmodels.api as sm
iris = sm.datasets.get_rdataset('iris').data
ve PyDataset
from pydataset import data
iris = data('iris')
scikit-learn
pandalar veri çerçevesi yerine örnek verileri numpy diziler olarak döndürür.
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 , veri kümesi yönetimini kolaylaştırmak için oluşturulmuş bir veri kümesi yöneticisidir. Bu gibi birçok ortak örnek veri kümelerini içerir birkaç dan uciml örnek depo . Hızlı başlangıç sayfası yükleme ve iris veri setini nasıl içe gösterileri:
# In your terminal
$ pip install quilt
$ quilt install uciml/iris
Bir veri kümesi kurduktan sonra yerel olarak erişilebilir olduğundan, verilerle çevrimdışı çalışmak istiyorsanız bu en iyi seçenektir.
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
Yorgan aynı zamanda veri kümesi sürümlemesini destekler ve her veri kümesinin kısa bir açıklamasını içerir.
rpy2
Modül bunun için yapılır:
from rpy2.robjects import r, pandas2ri
pandas2ri.activate()
r['iris'].head()
verim
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
Pandalar 0.19'a kadar pandaların kendi rpy
arayüzünü kullanabilirsiniz:
import pandas.rpy.common as rcom
iris = rcom.load_data('iris')
print(iris.head())
verim
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
ayrıca nesneleri Python nesnelerine dönüştürmek içinR
bir yol sağlar :
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())
verim
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
edilmiştir 0.20 uzaklaştırıldı . R ile arayüz oluşturmak rpy2
için önerilen seçenektir.
Herkese açık herhangi bir .csv dosyası, URL'si kullanılarak pandalara son derece hızlı bir şekilde yüklenebilir. Orijinal olarak UCI arşivinden alınan iris veri kümesini kullanan bir örnek.
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()
Buradaki çıktı, verilen URL'den yeni yüklediğiniz .csv dosya başlığıdır.
>>> 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
Aynısı için akılda kalıcı bir kısa URL https://j.mp/iriscsv
. Bu kısa URL, kopyalanarak yapıştırılmamışsa, yalnızca yazılmışsa çalışacaktır.
iris.names
DataFrame'i test eden yerleşik pandalar çok kullanışlıdır.
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
diğer test DataFrame seçenekleri :
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