R లో డేటాఫ్రేమ్‌ను ఎలా బదిలీ చేయాలి

R Lo Detaphrem Nu Ela Badili Ceyali



డేటాసెట్‌ను బదిలీ చేయడం అనేది విశ్లేషణ యొక్క నిర్దిష్ట అవసరాలకు అనుగుణంగా డేటాను సంస్కరించే అటువంటి ఆపరేషన్. డేటాసెట్‌ను బదిలీ చేయడం అనేది డేటాసెట్ యొక్క విలోమ అడ్డు వరుసలు మరియు నిలువు వరుసలను కలిగి ఉంటుంది, ఫలితంగా మారిన నిలువు వరుసలు మరియు అడ్డు వరుసలతో కొత్త డేటాసెట్ వస్తుంది. R డేటాసెట్‌ను బదిలీ చేయడానికి కొన్ని ఫంక్షన్‌లను అందిస్తుంది. ఈ కథనంలో, మేము R లోని డేటాఫ్రేమ్‌ల కోసం వివిధ ట్రాన్స్‌పోజింగ్ పద్ధతులను కవర్ చేస్తాము.

ఉదాహరణ 1: R లో T() ఫంక్షన్‌ని ఉపయోగించి డేటాఫ్రేమ్‌ను బదిలీ చేయండి

t() ఫంక్షన్ అనేది R యొక్క అంతర్నిర్మిత ఫంక్షన్, ఇది డేటాఫ్రేమ్‌ను బదిలీ చేయడానికి ఉపయోగించబడుతుంది. అయినప్పటికీ, ఇది డేటాఫ్రేమ్‌ను మ్యాట్రిక్స్‌గా మారుస్తుంది, కాబట్టి ఏదైనా సంఖ్యేతర నిలువు వరుస అక్షర తీగలుగా మార్చబడుతుంది. డేటాఫ్రేమ్‌ను బదిలీ చేయడానికి క్రింది R స్క్రిప్ట్‌ను పరిగణించండి:







MyData = data.frame(c1 = c(1, 2, 3, 4, 5),

c2 = c(6, 7, 8, 9, 10),
c3 = c(11, 12, 13, 14, 15))

row.names(MyData) = c('r1','r2','r3','r4','r5')

t(MyData)

ఇక్కడ, మేము MyData వెక్టర్‌ను ప్రకటించి, దానికి data.frame()ని కేటాయించాము. మేము data.frame() ఫంక్షన్‌లోని విలువలతో మూడు నిలువు వరుసలను కలిగి ఉన్న నమూనా డేటాను ఇన్సర్ట్ చేస్తాము. ఆ తర్వాత, మేము 'row.names()' ఫంక్షన్‌ని ఉపయోగిస్తాము మరియు 'MyData' డేటాఫ్రేమ్ యొక్క విలువల కోసం అడ్డు వరుస పేర్లను సెట్ చేస్తాము. చివరగా, మేము t() ఫంక్షన్‌ని ఉపయోగించి “MyData” డేటాఫ్రేమ్‌ను బదిలీ చేస్తాము.



కింది అవుట్‌పుట్ డేటాఫ్రేమ్ యొక్క బదిలీని చూపుతుంది, ఇక్కడ అసలు డేటాఫ్రేమ్ యొక్క అడ్డు వరుసల పేర్లు బదిలీ చేయబడిన డేటాఫ్రేమ్ యొక్క నిలువు వరుస పేర్లుగా మారతాయి మరియు అసలు డేటాఫ్రేమ్ యొక్క నిలువు వరుస పేర్లు బదిలీలో పోతాయి:







ఉదాహరణ 2: R లో ట్రాన్స్‌పోజ్() ఫంక్షన్‌ని ఉపయోగించి డేటాఫ్రేమ్‌ను బదిలీ చేయండి

“data.table” ప్యాకేజీ నుండి ట్రాన్స్‌పోజ్() ఫంక్షన్‌ని డేటాఫ్రేమ్‌ని బదిలీ చేయడానికి కూడా ఉపయోగించవచ్చు మరియు అది డేటాఫ్రేమ్‌ని అందిస్తుంది. కాబట్టి, “data.table” R లో ఇన్‌స్టాల్ చేయబడిందని నిర్ధారించుకోవాలి. అది కనుగొనబడకపోతే, మేము దానిని క్రింది కమాండ్‌తో ఇన్‌స్టాల్ చేయవచ్చు:

install.packages('data.table')

ఇప్పుడు, డేటాఫ్రేమ్‌ను ట్రాన్స్‌పోజ్ చేయడానికి R లో ట్రాన్స్‌పోజ్() ఫంక్షన్‌ని యాక్సెస్ చేయడానికి మనం “data.table” ప్యాకేజీని సులభంగా దిగుమతి చేసుకోవచ్చు. డేటాఫ్రేమ్‌ను బదిలీ చేయడానికి ట్రాన్స్‌పోజ్() ఫంక్షన్‌ని పిలిచే కింది R కోడ్‌ను పరిగణించండి:



df <- data.frame(A = c(1:5),

B = c(6:10),
సి = సి(11:15))


row.names(df) <- c('r1', 'r2', 'r3', 'r4', 'r5')

df

ఇక్కడ, మేము మూడు నిలువు వరుసలు మరియు ఐదు వరుసలతో “df” డేటాఫ్రేమ్‌ను సృష్టిస్తాము, ఇక్కడ ప్రతి నిలువు వరుస వరుసగా 1 నుండి 5, 6 నుండి 10 మరియు 11 నుండి 15 వరకు సంఖ్యల శ్రేణిని కలిగి ఉంటుంది. అదనంగా, మేము row.names() ఫంక్షన్‌ని ఉపయోగించి DataFrame అడ్డు వరుస పేర్లను కేటాయిస్తాము. ఆ తర్వాత, మేము అసలు డేటాఫ్రేమ్‌ను కన్సోల్‌కు ప్రింట్ చేస్తాము.

అసలు డేటాఫ్రేమ్ ఇక్కడ స్క్రీన్‌పై చూపబడింది:

తరువాత, మేము డేటాఫ్రేమ్ యొక్క అడ్డు వరుసలు మరియు నిలువు వరుసలను మార్చడం ద్వారా అసలు “df” డేటాఫ్రేమ్‌ను బదిలీ చేస్తాము.

లైబ్రరీ(data.table)

df_trans <- transpose(df)

వరుస పేర్లు(df_trans) <- colnames(df)

colnames(df_trans) <- rownames(df)

df_trans

దీని కోసం, మేము మొదట 'data.table' లైబ్రరీని లోడ్ చేస్తాము, ఇది R లోని పట్టిక డేటాతో పని చేయడానికి సాధనాలను అందిస్తుంది. తర్వాత, 'data.table' లైబ్రరీ నుండి transpose() ఫంక్షన్ ఉపయోగించబడుతుంది. ఫలితంగా బదిలీ చేయబడిన డేటాఫ్రేమ్ “df_t” అనే కొత్త వేరియబుల్‌కు కేటాయించబడుతుంది. ఆ తర్వాత, మేము అసలైన “df” డేటాఫ్రేమ్ యొక్క నిలువు వరుస పేర్లను rownames() ఫంక్షన్‌ని ఉపయోగించి ట్రాన్స్‌పోజ్ చేయబడిన “df_trans” డేటాఫ్రేమ్‌కు వరుస పేర్లుగా కేటాయిస్తాము. ఆపై, అసలు “df” డేటాఫ్రేమ్ యొక్క అడ్డు వరుస పేర్లు colnames() ఫంక్షన్‌ని ఉపయోగించి ట్రాన్స్‌పోజ్ చేయబడిన “df_trans” డేటాఫ్రేమ్‌కు నిలువు వరుస పేర్లుగా కేటాయించబడతాయి.

అందువలన, అవుట్‌పుట్‌లో అసలు డేటాఫ్రేమ్ ట్రాన్స్‌పోజిషన్ సాధించబడుతుంది. ఇది ట్రాన్స్‌పోజ్ చేయబడిన డేటాఫ్రేమ్‌లోని ప్రతి సెల్‌ను సూచిస్తుంది, దీనిలో ఇది అసలు డేటాఫ్రేమ్‌లోని సంబంధిత సెల్‌తో సమానమైన విలువను కలిగి ఉంటుంది కానీ ట్రాన్స్‌పోజిషన్ కారణంగా వేరే స్థితిలో ఉంటుంది.

ఉదాహరణ 3: R లో Tidyr లైబ్రరీ Gather() ఫంక్షన్‌ని ఉపయోగించి డేటాఫ్రేమ్‌ను బదిలీ చేయండి

డేటాఫ్రేమ్‌ను బదిలీ చేయడానికి R యొక్క టైడైర్ ప్యాకేజీని ఉపయోగించవచ్చు. మేము డేటాఫ్రేమ్‌ను వైడ్ నుండి లాంగ్ ఫార్మాట్‌కి మార్చాలనుకున్నప్పుడు, ఆపై మారిన అడ్డు వరుసలు మరియు నిలువు వరుసలతో వైడ్ ఫార్మాట్‌కి తిరిగి వెళ్లాలనుకున్నప్పుడు ఈ పద్ధతి ఉపయోగపడుతుంది. ఇది డేటాను మార్చడానికి మరియు పునర్వ్యవస్థీకరించడానికి అనేక విధులను అందిస్తుంది. దీనికి ముందు, మనం ప్రత్యేకంగా కింది ఆదేశాన్ని ఉపయోగించి tidyr ప్యాకేజీని డౌన్‌లోడ్ చేసుకోవాలి:

install.packages('tidyr')

కింది R కోడ్‌ని పరిశీలిద్దాం. విస్తృత డేటాఫ్రేమ్‌ను ఎక్కువసేపు మార్చడానికి మేము ఈ ప్యాకేజీ యొక్క gather() ఫంక్షన్‌ని ఉపయోగిస్తాము:

లైబ్రరీ(టైడర్)

n = 10

tidy_df = data.frame(

ID = c(1:n),
పరీక్ష1_మార్కులు = c(73, 219, 86, 192, 99,
188, 72, 35, 91, 165),
పరీక్ష2_మార్కులు = c(217, 89, 66, 334, 99,
101, 108, 233, 45, 300),
పరీక్ష3_మార్కులు = c(39, 101, 209, 289, 176,
120, 89, 119, 199, 96))

చక్కనైన_df

ఇక్కడ, 'విస్తృత' డేటాఫ్రేమ్ టైడైర్ ఉపయోగించి 'పొడవైన' డేటాఫ్రేమ్‌గా మార్చబడుతుంది. ముందుగా, మేము మూడు నిలువు వరుసలతో “tidy_df” డేటాఫ్రేమ్‌ని సృష్టిస్తాము. ఈ నిలువు వరుసలలో ప్రతి ఒక్కటి 10 విలువలను కలిగి ఉంటుంది.

పొడవైన డేటాఫ్రేమ్ క్రింది అవుట్‌పుట్ స్క్రీన్‌లో చూపబడింది:

అప్పుడు, మేము పైప్ ఆపరేటర్ “%>%”తో gather() ఫంక్షన్‌కి “tidy_df” DataFrameని పాస్ చేస్తాము. tidyr నుండి gather() ఫంక్షన్ “tidy_df”ని పొడవైన డేటాఫ్రేమ్‌గా మార్చడానికి ఉపయోగించబడుతుంది. Gather() ఫంక్షన్ 'పరీక్షలు' పేరుతో ఇన్‌పుట్‌లను తీసుకుంటుంది, ఇది పరివర్తనలో సృష్టించబడిన వేరియబుల్ పేర్లను ఉంచడానికి కొత్త నిలువు వరుసను సూచిస్తుంది. “మార్క్‌లు” “Exam1_Marks” మరియు “Exam2_Marks”ని కలిపి సేకరిస్తున్న నిలువు వరుసను నిర్దేశిస్తుంది.

పొడవు <- tidy_df %>%

సేకరించండి (పరీక్షలు, మార్కులు,
పరీక్ష1_మార్కులు:పరీక్ష2_మార్కులు)


పొడవు

అవుట్‌పుట్ ఇప్పుడు మూడు నిలువు వరుసలతో “పొడవైన” ఆకృతిని కలిగి ఉన్న కన్సోల్‌కు పొడవైన డేటాఫ్రేమ్‌ను ప్రదర్శిస్తుంది:

ఉదాహరణ 4: R లో Pivot_Wider() ఫంక్షన్‌ని ఉపయోగించి డేటాఫ్రేమ్‌ను బదిలీ చేయండి

DataFrameని బదిలీ చేయడానికి మేము ఉపయోగించే తదుపరి అధునాతన ఫంక్షన్ pivot_wider() ఫంక్షన్. pivot_wider() అనేది R లోని tidyr ప్యాకేజీ నుండి ఒక ఫంక్షన్, ఇది 'పొడవైన' డేటాఫ్రేమ్‌ను 'విస్తృత' డేటాఫ్రేమ్‌గా మార్చడానికి అనుమతిస్తుంది. ఫంక్షన్ మూడు ప్రధాన ఆర్గ్యుమెంట్‌లను తీసుకుంటుంది, ఇవి క్రింది R కోడ్‌లో చర్చించబడ్డాయి:

లైబ్రరీ(టైడర్)

df <- data.frame(

id = c(1, 2, 3, 1, 2, 3),
var = c('v1', 'v1', 'v1', 'v2', 'v2', 'v2'),
val = c(4, 5, 6, 7, 8, 9)


)

df

ఇక్కడ, మేము మొదట లైబ్రరీ() ఫంక్షన్‌ని ఉపయోగించి tidyr ప్యాకేజీని లోడ్ చేస్తాము. అప్పుడు, మేము నమూనా డేటాఫ్రేమ్‌ను “df”లో సెట్ చేస్తాము. “df” డేటాఫ్రేమ్‌లో మూడు నిలువు వరుసలు ఉన్నాయి, అవి వేర్వేరు విలువలను కలిగి ఉంటాయి. నమూనా డేటాఫ్రేమ్ క్రింది అవుట్‌పుట్‌లో చూడవచ్చు:

ఆ తర్వాత, tidyr నుండి pivot_wider() ఫంక్షన్ “df”ని “df_wide”గా మార్చడానికి ఉపయోగించబడుతుంది.

df_wide <- pivot_wider(df, names_from = var, values_from = val)

df_wide

pivot_wider() ఫంక్షన్ ఇక్కడ మూడు ఆర్గ్యుమెంట్‌లను తీసుకుంటుంది. ముందుగా, 'df' డేటాఫ్రేమ్ రూపాంతరం చెందుతుంది. అప్పుడు, names_from వాదన కొత్త వేరియబుల్ పేర్లకు ఉపయోగించాల్సిన కాలమ్ పేరును సెట్ చేస్తుంది. చివరగా, values_from వాదన కొత్త విలువల కోసం ఉపయోగించాల్సిన కాలమ్ పేరును నిర్దేశిస్తుంది.

కింది అవుట్‌పుట్ పొడవైన డేటాఫ్రేమ్‌ను విస్తృత డేటాఫ్రేమ్‌లోకి మార్చడాన్ని సూచిస్తుంది:

ముగింపు

మేము డేటాఫ్రేమ్‌ను Rలో బదిలీ చేయడానికి వివిధ మార్గాలను ఉపయోగించాము. మొదటి ఉదాహరణ t() అంతర్నిర్మిత పద్ధతితో సెట్ చేయబడింది. అన్ని ఇతర ఉదాహరణలకు దిగుమతి చేయడానికి ప్యాకేజీలు అవసరం, తద్వారా మేము డేటాఫ్రేమ్ ట్రాన్స్‌పొజిషన్ కోసం వాటి ఫంక్షన్‌లను ఉపయోగించవచ్చు. అయితే, ఉపయోగించడానికి ఉత్తమమైన పద్ధతి మీరు పని చేస్తున్న నిర్దిష్ట పరిస్థితి మరియు డేటా నిర్మాణంపై ఆధారపడి ఉంటుంది.