R – Datové rámce

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




# 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




# 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




# 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




# 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.