logo

R – Datové rámce

Programovací jazyk R je programovací jazyk s otevřeným zdrojovým kódem, který je široce používán jako statistický software a nástroj pro analýzu dat. Datové rámce v jazyce R jsou generické datové objekty R, které se používají k ukládání tabulkových dat.

Datové rámce lze také interpretovat jako matice, kde každý sloupec a matice mohou mít různé datové typy. R DataFrame se skládá ze tří hlavních komponent, dat, řádků a sloupců.



R Struktura datových rámců

Jak můžete vidět na obrázku níže, takto je strukturován datový rámec.

Data jsou prezentována v tabulkové formě, což usnadňuje ovládání a pochopení.

R - Data FramesGeeksforgeeks

R – Datové rámce



Vytvořte datový rámec v programovacím jazyce R

K vytvoření datového rámce R použijte data.frame() funkci a poté předejte funkci každý z vektorů, které jste vytvořili, jako argumenty.

R






# R program to create dataframe> # creating a data frame> friend.data <->data.frame>(> >friend_id =>c>(1:5),> >friend_name =>c>(>'Sachin'>,>'Sourav'>,> >'Dravid'>,>'Sehwag'>,> >'Dhoni'>),> >stringsAsFactors =>FALSE> )> # print the data frame> print>(friend.data)>

>

>

Výstup:

 friend_id friend_name 1 1 Sachin 2 2 Sourav 3 3 Dravid 4 4 Sehwag 5 5 Dhoni>

Získejte strukturu datového rámce R

Strukturu datového rámce R lze získat pomocí str() funkce v R.

Dokáže zobrazit i vnitřní strukturu velkých seznamů, které jsou vnořené. Poskytuje jednořádkový výstup pro základní R objekty, který dává uživateli vědět o objektu a jeho složkách.

R




spát v js

# R program to get the> # structure of the data frame> # creating a data frame> friend.data <->data.frame>(> >friend_id =>c>(1:5),> >friend_name =>c>(>'Sachin'>,>'Sourav'>,> >'Dravid'>,>'Sehwag'>,> >'Dhoni'>),> >stringsAsFactors =>FALSE> )> # using str()> print>(>str>(friend.data))>

>

>

Výstup:

'data.frame': 5 obs. of 2 variables:  $ friend_id : int 1 2 3 4 5  $ friend_name: chr 'Sachin' 'Sourav' 'Dravid' 'Sehwag' ... NULL>

Souhrn dat v datovém rámci R

V datovém rámci R lze statistický souhrn a povahu dat získat aplikací souhrn() funkce.

Je to obecná funkce používaná k vytváření souhrnů výsledků výsledků různých funkcí přizpůsobení modelu. Funkce vyvolá konkrétní metody, které závisí na třídě prvního argumentu.

R




# R program to get the> # summary of the data frame> # creating a data frame> friend.data <->data.frame>(> >friend_id =>c>(1:5),> >friend_name =>c>(>'Sachin'>,>'Sourav'>,> >'Dravid'>,>'Sehwag'>,> >'Dhoni'>),> >stringsAsFactors =>FALSE> )> # using summary()> print>(>summary>(friend.data))>

>

>

Výstup:

 friend_id friend_name   Min. :1 Length:5   1st Qu.:2 Class :character   Median :3 Mode :character   Mean :3   3rd Qu.:4   Max. :5>

Extrahujte data z datového rámce v R

Extrahování dat z datového rámce R znamená přístup k jeho řádkům nebo sloupcům. Jeden může extrahovat konkrétní sloupec z datového rámce R pomocí jeho názvu sloupce.

R




# R program to extract> # data from the data frame> # creating a data frame> friend.data <->data.frame>(> >friend_id =>c>(1:5),> >friend_name =>c>(>'Sachin'>,>'Sourav'>,> >'Dravid'>,>'Sehwag'>,> >'Dhoni'>),> >stringsAsFactors =>FALSE> )> # Extracting friend_name column> result <->data.frame>(friend.data$friend_name)> print>(result)>

>

>

Výstup:

 friend.data.friend_name 1 Sachin 2 Sourav 3 Dravid 4 Sehwag 5 Dhoni>

Rozbalte datový rámec v jazyce R

Datový rámec v R lze rozšířit přidáním nových sloupců a řádků do již existujícího datového rámce R.

R




# R program to expand> # the data frame> # creating a data frame> friend.data <->data.frame>(> >friend_id =>c>(1:5),> >friend_name =>c>(>'Sachin'>,>'Sourav'>,> >'Dravid'>,>'Sehwag'>,> >'Dhoni'>),> >stringsAsFactors =>FALSE> )> # Expanding data frame> friend.data$location <->c>(>'Kolkata'>,>'Delhi'>,> >'Bangalore'>,>'Hyderabad'>,> >'Chennai'>)> resultant <- friend.data> # print the modified data frame> print>(resultant)>

>

>

Výstup:

 friend_id friend_name location 1 1 Sachin Kolkata 2 2 Sourav Delhi 3 3 Dravid Bangalore 4 4 Sehwag Hyderabad 5 5 Dhoni Chennai>

V R lze provádět různé typy operací na datovém rámci, jako je přístup k řádkům a sloupcům, výběr podmnožiny datového rámce, úpravy datových rámců, mazání řádků a sloupců v datovém rámci , atd.

Obraťte se prosím na Operace datových rámců v R vědět o všech typech operací, které lze provádět na datovém rámci.

Přístup k položkám v datovém rámci R

Můžeme vybrat a přistupovat k libovolnému prvku z datového rámce pomocí single$>,závorky[ ] or>dvojité závorky[[]]>pro přístup ke sloupcům z datového rámce.

R




# creating a data frame> friend.data <->data.frame>(> >friend_id =>c>(1:5),> >friend_name =>c>(>'Sachin'>,>'Sourav'>,> >'Dravid'>,>'Sehwag'>,> >'Dhoni'>),> >stringsAsFactors =>FALSE> )> # Access Items using []> friend.data[1]> # Access Items using [[]]> friend.data[[>'friend_name'>]]> # Access Items using $> friend.data$friend_id>

>

>

Výstup:

 friend_id 1 1 2 2 3 3 4 4 5 5 Access Items using [[]] [1] 'Sachin' 'Sourav' 'Dravid' 'Sehwag' 'Dhoni'   Access Items using $ [1] 1 2 3 4 5>

Počet řádků a sloupců

Můžeme zjistit, kolik řádků a sloupců parsant v našem datovém rámci pomocí funkce dim.

R




příkladem open source operačního systému je

# creating a data frame> friend.data <->data.frame>(> >friend_id =>c>(1:5),> >friend_name =>c>(>'Sachin'>,>'Sourav'>,> >'Dravid'>,>'Sehwag'>,> >'Dhoni'>),> >stringsAsFactors =>FALSE> )> # find out the number of rows and clumns> dim>(friend.data)>

>

>

Výstup:

[1] 5 2>

Přidejte řádky a sloupce do datového rámce R

Do R DataFrame můžete snadno přidávat řádky a sloupce. Vložení pomáhá při rozšiřování již existujícího DataFrame, aniž byste potřebovali nový.

Podívejme se, jak přidat řádky a sloupce do DataFrame? s příkladem:

Přidejte řádky do datového rámce R

Chcete-li přidat řádky do datového rámce, můžete použít vestavěnou funkci rbind().

Následující příklad demonstruje fungování rbind() v R Data Frame.

R




# Creating a dataframe representing products in a store> Products <->data.frame>(> >Product_ID =>c>(101, 102, 103),> >Product_Name =>c>(>'T-Shirt'>,>'Jeans'>,>'Shoes'>),> >Price =>c>(15.99, 29.99, 49.99),> >Stock =>c>(50, 30, 25)> )> # Print the existing dataframe> cat>(>'Existing dataframe (Products): '>)> print>(Products)> # Adding a new row for a new product> New_Product <->c>(104,>'Sunglasses'>, 39.99, 40)> Products <->rbind>(Products, New_Product)> # Print the updated dataframe after adding the new product> cat>(>' Updated dataframe after adding a new product: '>)> print>(Products)>

>

>

Výstup:

Existing dataframe (Products):   Product_ID Product_Name Price Stock 1 101 T-Shirt 15.99 50 2 102 Jeans 29.99 30 3 103 Shoes 49.99 25  Updated dataframe after adding a new product:   Product_ID Product_Name Price Stock 1 101 T-Shirt 15.99 50 2 102 Jeans 29.99 30 3 103 Shoes 49.99 25 4 104 Sunglasses 39.99 40>

Přidejte sloupce do datového rámce R

Chcete-li přidat sloupce do datového rámce, můžete použít vestavěnou funkci cbind().

Následující příklad demonstruje fungování cbind() v R Data Frame .

R




věk dharmendry

# Existing dataframe representing products in a store> Products <->data.frame>(> >Product_ID =>c>(101, 102, 103),> >Product_Name =>c>(>'T-Shirt'>,>'Jeans'>,>'Shoes'>),> >Price =>c>(15.99, 29.99, 49.99),> >Stock =>c>(50, 30, 25)> )> # Print the existing dataframe> cat>(>'Existing dataframe (Products): '>)> print>(Products)> # Adding a new column for 'Discount' to the dataframe> Discount <->c>(5, 10, 8)># New column values for discount> Products <->cbind>(Products, Discount)> # Rename the added column> colnames>(Products)[>ncol>(Products)] <->'Discount'> # Renaming the last column> # Print the updated dataframe after adding the new column> cat>(>' Updated dataframe after adding a new column 'Discount': '>)> print>(Products)>

>

>

Výstup:

Existing dataframe (Products):   Product_ID Product_Name Price Stock 1 101 T-Shirt 15.99 50 2 102 Jeans 29.99 30 3 103 Shoes 49.99 25  Updated dataframe after adding a new column 'Discount':   Product_ID Product_Name Price Stock Discount 1 101 T-Shirt 15.99 50 5 2 102 Jeans 29.99 30 10 3 103 Shoes 49.99 25 8>

Odebrat řádky a sloupce

Datový rámec v R odebere sloupce a řádky z již existujícího R datového rámce.

Odebrat řádek v R DataFrame

R




library>(dplyr)> # Create a data frame> data <->data.frame>(> >friend_id =>c>(1, 2, 3, 4, 5),> >friend_name =>c>(>'Sachin'>,>'Sourav'>,>'Dravid'>,>'Sehwag'>,>'Dhoni'>),> >location =>c>(>'Kolkata'>,>'Delhi'>,>'Bangalore'>,>'Hyderabad'>,>'Chennai'>)> )> data> # Remove a row with friend_id = 3> data <->subset>(data, friend_id != 3)> data>

>

>

Výstup:

 friend_id friend_name location 1 1 Sachin Kolkata 2 2 Sourav Delhi 3 3 Dravid Bangalore 4 4 Sehwag Hyderabad 5 5 Dhoni Chennai   # Remove a row with friend_id = 3   friend_id friend_name location 1 1 Sachin Kolkata 2 2 Sourav Delhi 4 4 Sehwag Hyderabad 5 5 Dhoni Chennai>

Ve výše uvedeném kódu jsme nejprve vytvořili datový rámec s názvem data se třemi sloupci: přítel_id , jméno_přítele , a umístění . Chcete-li odstranit řádek pomocí přítel_id rovná 3, použili jsme podmnožina() funkci a specifikoval podmínku friend_id != 3 . Tím byl odstraněn řádek s přítel_id rovný 3.

Odebrat sloupec v R DataFrame

R




library>(dplyr)> # Create a data frame> data <->data.frame>(> >friend_id =>c>(1, 2, 3, 4, 5),> >friend_name =>c>(>'Sachin'>,>'Sourav'>,>'Dravid'>,>'Sehwag'>,>'Dhoni'>),> >location =>c>(>'Kolkata'>,>'Delhi'>,>'Bangalore'>,>'Hyderabad'>,>'Chennai'>)> )> data> # Remove the 'location' column> data <->select>(data, -location)> data>

>

>

Výstup:

 friend_id friend_name location 1 1 Sachin Kolkata 2 2 Sourav Delhi 3 3 Dravid Bangalore 4 4 Sehwag Hyderabad 5 5 Dhoni Chennai>Odeberte sloupec 'location' friend_id friend_name 1 1 Sachin 2 2 Sourav 3 3 Dravid 4 4 Sehwag 5 5 Dhoni>

Chcete-li odstranit umístění sloupec, použili jsme vybrat() funkce a specifikované -umístění . The znak znamená, že chceme odstranit umístění sloupec. Výsledný datový rámec data bude mít pouze dva sloupce: friend_id a jméno_přítele .

Kombinace datových rámců v R

Existují 2 způsoby, jak kombinovat datové rámce v R. Můžete je kombinovat vertikálně nebo horizontálně.

Podívejme se na oba případy na příkladu:

Kombinujte R datový rámec vertikálně

Pokud chcete vertikálně spojit 2 datové rámce, můžete použít funkce rbind(). Tato funkce funguje pro kombinaci dvou nebo více datových rámců.

R




# Creating two sample dataframes> df1 <->data.frame>(> >Name =>c>(>'Alice'>,>'Bob'>),> >Age =>c>(25, 30),> >Score =>c>(80, 75)> )> df2 <->data.frame>(> >Name =>c>(>'Charlie'>,>'David'>),> >Age =>c>(28, 35),> >Score =>c>(90, 85)> )> # Print the existing dataframes> cat>(>'Dataframe 1: '>)> print>(df1)> cat>(>' Dataframe 2: '>)> print>(df2)> # Combining the dataframes using rbind()> combined_df <->rbind>(df1, df2)> # Print the combined dataframe> cat>(>' Combined Dataframe: '>)> print>(combined_df)>

>

>

Výstup:

Dataframe 1:   Name Age Score 1 Alice 25 80 2 Bob 30 75  Dataframe 2:   Name Age Score 1 Charlie 28 90 2 David 35 85  Combined Dataframe:   Name Age Score 1 Alice 25 80 2 Bob 30 75 3 Charlie 28 90 4 David 35 85>

Kombinovat R datový rámec vodorovně:

Pokud chcete horizontálně kombinovat 2 datové rámce, můžete použít funkce cbind(). Tato funkce funguje pro kombinaci dvou nebo více datových rámců.

R


primární klíč složený klíč



# Creating two sample dataframes> df1 <->data.frame>(> >Name =>c>(>'Alice'>,>'Bob'>),> >Age =>c>(25, 30),> >Score =>c>(80, 75)> )> df2 <->data.frame>(> >Height =>c>(160, 175),> >Weight =>c>(55, 70)> )> # Print the existing dataframes> cat>(>'Dataframe 1: '>)> print>(df1)> cat>(>' Dataframe 2: '>)> print>(df2)> # Combining the dataframes using cbind()> combined_df <->cbind>(df1, df2)> # Print the combined dataframe> cat>(>' Combined Dataframe: '>)> print>(combined_df)>

>

>

Výstup:

Dataframe 1:   Name Age Score 1 Alice 25 80 2 Bob 30 75  Dataframe 2:   Height Weight 1 160 55 2 175 70  Combined Dataframe:   Name Age Score Height Weight 1 Alice 25 80 160 55 2 Bob 30 75 175 70>

Přečtěte si také:

  • R – Objekty
  • Datové struktury v programování R

V tomto článku jsme se zabývali R datové rámce, a všechny základní operace, jako je vytvoření, přístup, shrnutí, přidání a odebrání. Účelem tohoto článku je seznámit vás s datovými rámci v R, abyste je mohli používat ve svých projektech.

Doufám, že vám to pomůže pochopit koncept datových rámců v R a můžete snadno implementovat datový rámec R ve svých projektech.