En lista i R programmering är ett generiskt objekt som består av en ordnad samling objekt. Listor är en-dimensionell , heterogen data struktur.
Listan kan vara en lista över vektorer , en lista med matriser, en lista med tecken, en lista med funktioner , och så vidare.
En lista är en vektor men med heterogena dataelement. En lista i R skapas med hjälp av list() funktion .
R tillåter åtkomst till element i en R-lista med hjälp av indexvärdet. I R börjar indexeringen av en lista med 1 istället för 0.
Skapa en lista
För att skapa en lista i R måste du använda funktionen som kallas lista() .
Med andra ord är en lista en generisk vektor som innehåller andra objekt. För att illustrera hur en lista ser ut tar vi ett exempel här. Vi vill bygga en lista över anställda med detaljerna. Så för detta vill vi ha attribut som ID, anställds namn och antalet anställda.
Exempel:
R
# R program to create a List> > # The first attributes is a numeric vector> # containing the employee IDs which is created> # using the command here> empId =>c>(1, 2, 3, 4)> > # The second attribute is the employee name> # which is created using this line of code here> # which is the character vector> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> > # The third attribute is the number of employees> # which is a single numeric variable.> numberOfEmp = 4> > # We can combine all these three different> # data types into a list> # containing the details of employees> # which can be done using a list command> empList =>list>(empId, empName, numberOfEmp)> > print>(empList)> |
>
>Produktion
[[1]] [1] 1 2 3 4 [[2]] [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' [[3]] [1] 4>
Namnlista komponenter
Namnlistkomponenter gör det lättare att komma åt dem.
hitta i strängen c++
Exempel:
R
# Creating a named list> my_named_list <->list>(name =>'Sudheer'>, age = 25, city =>'Delhi'>)> # Printing the named list> print>(my_named_list)> |
>
>Produktion
$name [1] 'Sudheer' $age [1] 25 $city [1] 'Delhi'>
Åtkomst till R-listans komponenter
Vi kan komma åt komponenter i en R-lista på två sätt.
1. Få åtkomst till komponenter genom namn:
Alla komponenter i en lista kan namnges och vi kan använda dessa namn för att komma åt komponenterna i R-listan med hjälp av dollarkommandot.
Exempel:
R
# R program to access> # components of a list> # Creating a list by naming all its components> empId =>c>(1, 2, 3, 4)> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> numberOfEmp = 4> empList =>list>(> >'ID'> = empId,> >'Names'> = empName,> >'Total Staff'> = numberOfEmp> >)> print>(empList)> # Accessing components by names> cat>(>'Accessing name components using $ command
'>)> print>(empList$Names)> |
>
>Produktion
$ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' $`Total Staff` [1] 4 Accessing name components using $ command [1] 'Debi' 'Sandeep' 'Subham' 'Shiba'>
2. Få tillgång till komponenter efter index:
Vi kan också komma åt komponenterna i R-listan med hjälp av index.
För att komma åt toppnivåkomponenterna i en R-lista måste vi använda en dubbelskärningsoperator [[ ]] som är två hakparenteser och om vi vill komma åt komponenterna på lägre eller inre nivå i en R-lista måste vi använda en annan hakparentes [ ] tillsammans med dubbelskärningsoperatören [[ ]] .
Exempel:
R
# R program to access> # components of a list> # Creating a list by naming all its components> empId =>c>(1, 2, 3, 4)> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> numberOfEmp = 4> empList =>list>(> >'ID'> = empId,> >'Names'> = empName,> >'Total Staff'> = numberOfEmp> >)> print>(empList)> # Accessing a top level components by indices> cat>(>'Accessing name components using indices
'>)> print>(empList[[2]])> # Accessing a inner level components by indices> cat>(>'Accessing Sandeep from name using indices
'>)> print>(empList[[2]][2])> # Accessing another inner level components by indices> cat>(>'Accessing 4 from ID using indices
'>)> print>(empList[[1]][4])> |
>
>Produktion
$ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' $`Total Staff` [1] 4 Accessing name components using indices [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' Accessing Sandeep from na...>
Ändra komponenter i en lista
En R-lista kan också ändras genom att komma åt komponenterna och ersätta dem med de du vill ha.
Exempel:
R
# R program to edit> # components of a list> # Creating a list by naming all its components> empId =>c>(1, 2, 3, 4)> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> numberOfEmp = 4> empList =>list>(> >'ID'> = empId,> >'Names'> = empName,> >'Total Staff'> = numberOfEmp> )> cat>(>'Before modifying the list
'>)> print>(empList)> # Modifying the top-level component> empList$`Total Staff` = 5> # Modifying inner level component> empList[[1]][5] = 5> empList[[2]][5] =>'Kamala'> cat>(>'After modified the list
'>)> print>(empList)> |
>
>Produktion
Before modifying the list $ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' $`Total Staff` [1] 4 After modified the list $ID [1] 1 2 3 4 5 $Names [1] 'Debi' 'Sandeep' 'Subham' ...>
Sammanfogning av listor
Två R-listor kan sammanfogas med sammanlänkningsfunktionen. Så när vi vill sammanfoga två listor måste vi använda sammanlänkningsoperatorn.
Syntax:
lista = c(lista, lista1)
lista = den ursprungliga listan
list1 = den nya listan
Exempel:
R
# R program to edit> # components of a list> # Creating a list by naming all its components> empId =>c>(1, 2, 3, 4)> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> numberOfEmp = 4> empList =>list>(> >'ID'> = empId,> >'Names'> = empName,> >'Total Staff'> = numberOfEmp> )> cat>(>'Before concatenation of the new list
'>)> print>(empList)> # Creating another list> empAge =>c>(34, 23, 18, 45)> # Concatenation of list using concatenation operator> empList =>c>(empName, empAge)> cat>(>'After concatenation of the new list
'>)> print>(empList)> |
>
>
tostring-metoden i javaProduktion
Before concatenation of the new list $ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' $`Total Staff` [1] 4 After concatenation of the new list [1] 'Debi' 'Sandeep' 'Subham' 'S...>
Lägger till objekt i listan
För att lägga till ett objekt i slutet av listan kan vi använda append()-funktionen.
R
# creating a list> my_numbers =>c>(1,5,6,3)> #adding number at the end of list> append>(my_numbers, 45)> #printing list> my_numbers> |
>
>Produktion
[1] 1 5 6 3 45 [1] 1 5 6 3>
Ta bort komponenter i en lista
För att ta bort komponenter i en R-lista måste vi först och främst komma åt dessa komponenter och sedan infoga ett negativt tecken före dessa komponenter. Det indikerar att vi var tvungna att ta bort den komponenten.
Exempel:
R
# R program to access> # components of a list> # Creating a list by naming all its components> empId =>c>(1, 2, 3, 4)> empName =>c>(>'Debi'>,>'Sandeep'>,>'Subham'>,>'Shiba'>)> numberOfEmp = 4> empList =>list>(> >'ID'> = empId,> >'Names'> = empName,> >'Total Staff'> = numberOfEmp> )> cat>(>'Before deletion the list is
'>)> print>(empList)> # Deleting a top level components> cat>(>'After Deleting Total staff components
'>)> print>(empList[-3])> # Deleting a inner level components> cat>(>'After Deleting sandeep from name
'>)> print>(empList[[2]][-2])> |
>
>Produktion
Before deletion the list is $ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sandeep' 'Subham' 'Shiba' $`Total Staff` [1] 4 After Deleting Total staff components $ID [1] 1 2 3 4 $Names [1] 'Debi' 'Sand...>
Sammanslagningslista
Vi kan slå samman R-listan genom att placera alla listor i en enda lista.
R
# Create two lists.> lst1 <->list>(1,2,3)> lst2 <->list>(>'Sun'>,>'Mon'>,>'Tue'>)> # Merge the two lists.> new_list <->c>(lst1,lst2)> # Print the merged list.> print>(new_list)> |
>
>
Produktion:
[[1]] [1] 1 [[2]] [1] 2 [[3]] [1] 3 [[4]] [1] 'Sun' [[5]] [1] 'Mon' [[6]] [1] 'Tue'>
Konvertera lista till vektor
Här ska vi konvertera R-listan till vektor, för detta kommer vi att skapa en lista först och sedan ta bort listan i vektorn.
R
# Create lists.> lst <->list>(1:5)> print>(lst)> # Convert the lists to vectors.> vec <->unlist>(lst)> print>(vec)> |
>
>
noll checkar i javaProduktion
[[1]] [1] 1 2 3 4 5 [1] 1 2 3 4 5>
R Lista till matris
Vi kommer att skapa matriser med funktionen matrix() i R-programmering. En annan funktion som kommer att användas är unlist()-funktionen för att konvertera listorna till en vektor.
R
# Defining list> lst1 <->list>(>list>(1, 2, 3),> >list>(4, 5, 6))> # Print list> cat>(>'The list is:
'>)> print>(lst1)> cat>(>'Class:'>,>class>(lst1),>'
'>)> # Convert list to matrix> mat <->matrix>(>unlist>(lst1), nrow = 2, byrow =>TRUE>)> # Print matrix> cat>(>'
After conversion to matrix:
'>)> print>(mat)> cat>(>'Class:'>,>class>(mat),>'
'>)> |
>
>Produktion
The list is: [[1]] [[1]][[1]] [1] 1 [[1]][[2]] [1] 2 [[1]][[3]] [1] 3 [[2]] [[2]][[1]] [1] 4 [[2]][[2]] [1] 5 [[2]][[3]] [1] 6 Class: list After conversion to matrix: [,1] [,2] [,3] [1,...>
I den här artikeln har vi täckt Listor i R, vi har täckt listoperationer som att skapa, namnge, slå samman och ta bort en lista på R-språk. R-lista är ett viktigt begrepp och bör inte hoppas över.
Hoppas du lärde dig om R-listor och dess verksamhet i den här artikeln.
Kolla också:
- R-array
- R- Tuples
- R – Matriser