Bevezetés az R tömbökbe

Mint tudjuk, a tömbök olyan objektumok, amelyek kettő vagy annál több dimenziós adatot tudnak tárolni. Az R-ben az Array ugyanazzal a koncepcióval rendelkezik, amelyet az array () függvény segítségével hozunk létre. Itt az adatokat formai mátrixokban, sorokban és oszlopokban tárolják. Egy adott elem tömbből való eléréséhez meg kell adni a sorindexet, az oszlopindexet és a mátrixszintet.

Az R-ben gyakran használt mátrixok a 2-D tömb speciális típusa.

Képi ábrázolás: vektor, mátrix, tömb

  • Egy dimenziós tömb, amelyet vektornak nevezünk.
  • Kétdimenziós tömb, amelyet mátrixnak nevezünk.

Szintaxis:

Itt található a tömb szintaxisa:

Array_NAME <- array (data, dim = (row_Size, column_Size, matrices, dimnames)

  • data - Az adatok egy bemeneti vektor, amelyet a tömbbe táplálnak.
  • mátrixok - Ez a mátrixok dimenziójára utal. Az R tömb többdimenziós mátrixok lehet.
  • row_Size - row_Size azt a sorok számát ábrázolja, amelyekből a tömb össze fog állni.
  • oszlop_mérete - az oszlop_mérete az oszlopok számát ábrázolja, amelyekből egy tömb fog állni.
  • dimnames - Ez a mező, ha a sorok és oszlopok alapértelmezett nevét a felhasználó kívánsága szerint változtatja meg.

Tulajdonságok:

  • Homogén. Ez azt jelenti, hogy képes tárolni ugyanolyan típusú adatokat.
  • Az adatokat a szomszédos memóriában tárolja
  • A tömb elemek az index számának megismerésével érhetők el.

Hogyan hozzunk létre egy tömböt R-ben?

Az alábbiakban bemutatjuk a r forgatókönyv szerinti tömb létrehozásának különböző forgatókönyveit:

1. forgatókönyv:

Hozzunk létre egy tömböt, amely 3 × 4 mátrix lenne. Itt 3 sor és 4 oszlop, mátrixok pedig egyek lesznek. Kezdeti lépésben tartsuk meg a dimneveket = NULL (ami egy alapértelmezett érték, ha semmi nincs megadva).

Ez egy egydimenziós mátrix

R kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
print(array(c(vector1, vector2), dim = c(3, 4, 1)))

Kimenet:

Annak ellenőrzése érdekében, hogy létrejött-e a tömb végül, vagy sem.

A tömb létrehozása után:

Eredmény

Az „osztály” funkció segíthet ebben.

osztály (Eredmény)

R kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
print(array(c(vector1, vector2), dim = c(3, 4, 1)))
Result <- array(c(vector1, vector2), dim = c(3, 4, 1))
class(Result)

Kimenet:

A tömb dimenziójának eredményének ellenőrzéséhez használhatjuk a hossz: függvényt.

R kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
print(array(c(vector1, vector2), dim = c(3, 4, 1)))
Result <- array(c(vector1, vector2), dim = c(3, 4, 1))
length(Result)

Kimenet:

2. forgatókönyv:

Hozzuk létre ugyanazt a tömböt, amely 3 × 4 mátrix lenne. Itt ismét 3 lesz egy sor, 4 pedig oszlop, de a mátrixok kettősek. Tartsa a dimnames = NULL értéket (ami egy alapértelmezett érték, ha nincs megadva).

R-kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
print(array(c(vector1, vector2), dim = c(3, 4, 2)))

Kimenet:

3. forgatókönyv:

Hozzuk létre ugyanazt a tömböt, amely 3 × 4 mátrix lenne. Itt ismét 3 lesz sor, 4 pedig oszlop, de a mátrixok kettősek lesznek. Nézzük meg a dimnevekhez rendelt értékeket.

R-kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
column.names <- c("COL1", "COL2", "COL3", "COL4")
row.names <- c("ROW1", "ROW2", "ROW3")
matrix.names <- c("Matrix1", "Matrix2")
array(c(vector1, vector2), dim = c(3, 4, 2), dimnames = list(row.names, column.names,
matrix.names ))

Kimenet:

Most már képesek vagyunk bármilyen dimenzió dimenziójának létrehozására. Most arra koncentrálhatunk, hogy a tömb bármely eleméhez hozzáférjünk.

Hogyan hozhatunk létre hozzáférési elemek tömböt R-ben?

Az alábbiakban különféle hozzáférési elemek szerepelnek az r tömb létrehozásáról:

1. forgatókönyv:

Tegyük fel, hogy ugyanaz a tömb van R-ben:

R kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
column.names <- c("COL1", "COL2", "COL3", "COL4")
row.names <- c("ROW1", "ROW2", "ROW3")
matrix.names <- c("Matrix1", "Matrix2")
result <- array(c(vector1, vector2), dim = c(3, 4, 2), dimnames = list(row.names, column.names,
matrix.names))

Kimenet:

Most hozzáférnünk kell a tömb második mátrixának 3. és 3. oszlopához.

R kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
column.names <- c("COL1", "COL2", "COL3", "COL4")
row.names <- c("ROW1", "ROW2", "ROW3")
matrix.names <- c("Matrix1", "Matrix2")
result <- array(c(vector1, vector2), dim = c(3, 4, 2), dimnames = list(row.names, column.names,
matrix.names))
result(3, 3, 2)

Kimenet:

Összegezve, szögletes zárójelekkel jelöljük az indexet. Az index meghatározásához a tömbökben négy választási lehetőség áll rendelkezésre: pozitív egész számok, negatív egész számok, logikai értékek, elemnevek

2. forgatókönyv:

Hozzá kell férni egy teljes 1. tömb mátrixhoz:

R kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
column.names <- c("COL1", "COL2", "COL3", "COL4")
row.names <- c("ROW1", "ROW2", "ROW3")
matrix.names <- c("Matrix1", "Matrix2")
result <- array(c(vector1, vector2), dim = c(3, 4, 2), dimnames = list(row.names, column.names,
matrix.names))
result(,, 1)

Kimenet:

Különböző tömbművelet példákkal

Ez a szakasz segítséget nyújt Önnek a tömbökön végrehajtott különféle műveletek kezelésében a különböző eredmények elérése érdekében.

1. Összeadás és kivonás:

A többdimenziós mátrixot konvertálni kell egydimenziós mátrixba ahhoz, hogy összeadják vagy kivonják.

  • Kiegészítés:

R-kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
column.names <- c("COL1", "COL2", "COL3", "COL4")
row.names <- c("ROW1", "ROW2", "ROW3")
matrix.names <- c("Matrix1", "Matrix2")
result <- array(c(vector1, vector2), dim = c(3, 4, 2), dimnames = list(row.names, column.names,
matrix.names))
result(,, 1) result(,, 2) print(result(,, 1) + result(,, 2))

Kimenet:

  • Kivonás:

R-kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
column.names <- c("COL1", "COL2", "COL3", "COL4")
row.names <- c("ROW1", "ROW2", "ROW3")
matrix.names <- c("Matrix1", "Matrix2")
result <- array(c(vector1, vector2), dim = c(3, 4, 2), dimnames = list(row.names, column.names,
matrix.names))
result(,, 1) result(,, 2) print(result(,, 1) - result(,, 2))

Kimenet:

2. Számítások a tömb elemről

Az function () függvénynév segítséget nyújt minden műveletnek a tömb elemeknél történő alkalmazásához.

Szintaxis:

apply(x, margin, fun)

Itt x egy tömb, a margó itt sorokra vagy oszlopokra utal.

  • MARGIN = 1 sorban történő működtetéshez
  • MARGIN = 2 az oszlopok szerinti működéshez
  • MARGIN = c (1, 2) mindkettőre.

A szórakozás az az adatkeret tömbjeinek elemeire alkalmazott funkció. Ezek lehetnek az R vagy az egyedi funkciókba tartozó standard funkciók (felhasználó által definiált)

1. példa:

Rise Wise R kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
column.names <- c("COL1", "COL2", "COL3", "COL4")
row.names <- c("ROW1", "ROW2", "ROW3")
matrix.names <- c("Matrix1", "Matrix2")
result <- array(c(vector1, vector2), dim = c(3, 4, 2), dimnames = list(row.names, column.names,
matrix.names))
result(,, 1) result(,, 2) apply(result(,, 1), 1, sum)

Kimenet:

Wise oszlop - R kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
column.names <- c("COL1", "COL2", "COL3", "COL4")
row.names <- c("ROW1", "ROW2", "ROW3")
matrix.names <- c("Matrix1", "Matrix2")
result <- array(c(vector1, vector2), dim = c(3, 4, 2), dimnames = list(row.names, column.names,
matrix.names))
result(,, 1) result(,, 2) apply(result(,, 1), 2, sum)

Kimenet:

Ez eredményez vektor formában, amely az egyes oszlopok összegét tartalmazza. Itt az „összeg” a szokásos R funkció.

2. példa:

R kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
column.names <- c("COL1", "COL2", "COL3", "COL4")
row.names <- c("ROW1", "ROW2", "ROW3")
matrix.names <- c("Matrix1", "Matrix2")
result <- array(c(vector1, vector2), dim = c(3, 4, 2), dimnames = list(row.names, column.names,
matrix.names))
result(,, 1) result(,, 2) apply(result(,, 1), 1, function(x) x+10)

Kimenet:

Ez ugyanannak a dimenziónak a kimenetet adja. Itt érdemes észrevenni, hogy a felhasználó által definiált funkciót alkalmaztuk. Ez a funkció nagyon hasznos és hatékony, miközben megoldja a valós problémákat. Az alkalmazott függvény alapja más összetett funkcióknak is, például a lapply (), rapply () stb.

3. Ellenőrizze a tömböt

Ellenőrizze a tömböt, ha az objektum tömb vagy sem. Az is.array () függvénynév egy primitív függvény, amely ezt lehetővé teszi. Kimenetet ad igaz vagy hamis értelemben

R kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
column.names <- c("COL1", "COL2", "COL3", "COL4")
row.names <- c("ROW1", "ROW2", "ROW3")
matrix.names <- c("Matrix1", "Matrix2")
result <- array(c(vector1, vector2), dim = c(3, 4, 2), dimnames = list(row.names, column.names,
matrix.names))
result(,, 1) result(,, 2) is.array(result)

Kimenet:

4. Ellenőrizze a tömb méretét

A dimenzió, a sorok és oszlopok ismerete segíti az adatok szeletelését és kockázását. Itt van néhány funkció, melyet ehhez végezhet: tompa, null, ncol

R-kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
result <- array(c(vector1, vector2), dim = c(3, 4, 2))
print(result)
dim(result)
nrow(result)
ncol(result)

Kimenet:

5. Ellenőrizze a sorok és oszlopok nevét

Annak érdekében, hogy megismerjük a tömb sorok, oszlopok és dimenzióneveit. Az alábbiakban bemutatjuk annak végrehajtását.

R kód:

vector1 <- c(2, 18, 30)
vector2 <- c(10, 14, 17, 13, 11, 15, 22, 11, 33)
column.names <- c("COL1", "COL2", "COL3", "COL4")
row.names <- c("ROW1", "ROW2", "ROW3")
matrix.names <- c("Matrix1", "Matrix2")
result <- array(c(vector1, vector2), dim = c(3, 4, 2), dimnames = list(row.names, column.names,
matrix.names))
rownames(result)
colnames(result)
dimnames(result)

Kimenet:

Következtetés:

A fenti tartalom áttekintése révén egyértelműen megérthették volna az R. tömbjeit. R egy statisztikai nyelv, és a tömbök gyakran használatos adatobjektumok. Ez azt jelenti, hogy a különféle műveletekkel, mint például az összeadás, kivonás, alkalmazás stb., Tömb alkalmazásával bármilyen alkalmazásban dolgozva az Ön számára süteménytúra lesz.

Ajánlott cikkek

Ez egy útmutató az R. tömbjéhez. Itt az R tömbök bevezetését, az R tulajdonságait, egy tömb létrehozását az R-ben és néhány példa példát mutatjuk be. A további javasolt cikkeken keresztül további információkat is megtudhat -

  1. Telepítse az R-t
  2. VBA tömbök
  3. Adattípusok a MATLAB-ban
  4. VBA ArrayList
  5. Tömbök a PHP-ben

Kategória: