เมื่อใช้ R จะสะดวกในการโหลดชุดข้อมูล "การปฏิบัติ" โดยใช้
data(iris)
หรือ
data(mtcars)
นุ่นมีอะไรคล้าย ๆ กันไหม? ฉันรู้ว่าฉันสามารถโหลดได้โดยใช้วิธีอื่นแค่อยากรู้ว่ามีอะไรอยู่ในตัวหรือไม่
เมื่อใช้ R จะสะดวกในการโหลดชุดข้อมูล "การปฏิบัติ" โดยใช้
data(iris)
หรือ
data(mtcars)
นุ่นมีอะไรคล้าย ๆ กันไหม? ฉันรู้ว่าฉันสามารถโหลดได้โดยใช้วิธีอื่นแค่อยากรู้ว่ามีอะไรอยู่ในตัวหรือไม่
คำตอบ:
เนื่องจากฉันเขียนคำตอบนี้ในตอนแรกฉันได้อัปเดตด้วยหลายวิธีที่ตอนนี้สามารถเข้าถึงชุดข้อมูลตัวอย่างใน Python ได้ โดยส่วนตัวแล้วฉันมักจะยึดติดกับแพ็คเกจอะไรก็ตามที่ฉันใช้อยู่แล้ว (โดยปกติคือนกทะเลหรือแพนด้า หากคุณต้องการการเข้าถึงแบบออฟไลน์การติดตั้งชุดข้อมูลด้วย Quilt ดูเหมือนจะเป็นทางเลือกเดียว
แพ็คเกจการวางแผนที่ยอดเยี่ยม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()
และผลลัพธ์อาจไม่เหมือนกันโดยรับจาก url โดยตรง ม่านตาและเคล็ดลับในชุดข้อมูลตัวอย่างนอกจากนี้ยังมีในนุ่น GitHub repo ที่นี่
ตั้งแต่ชุดข้อมูลใด ๆ ที่สามารถอ่านผ่านทาง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
ส่งคืนข้อมูลตัวอย่างเป็นอาร์เรย์ numpy แทนที่จะเป็นกรอบข้อมูลแพนด้า
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()
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
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
คุณสามารถใช้rpy
อินเทอร์เฟซของแพนด้าได้มากถึง 0.19 :
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')
ไหน?
ไฟล์. csv ที่เปิดเผยต่อสาธารณะสามารถโหลดลงในแพนด้าได้อย่างรวดเร็วโดยใช้ URL ของมัน นี่คือตัวอย่างการใช้ชุดข้อมูลม่านตาที่มีพื้นเพมาจากไฟล์เก็บถาวร 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
การทดสอบ DataFrame ของแพนด้าในตัวนั้นสะดวกมาก
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 การทดสอบอื่น ๆ :
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