Importing data into R from different file formats (CSV, Excel, etc.)

read.csv() એક લીટીમાં CSV ને data frame માં ખેંચે છે (header સંભાળાય, પ્રકારો ધારાય), Excel ની files ને readxl package નું read_excel() જોઈએ, અને str() એ આયાત પછીની તંદુરસ્તીની તપાસ છે.

9 min read · 9 cards · 2 checks

Read in: English · हिन्दी · ગુજરાતી


Theory

Survey ફરી આવે છે

CampusPulse નો data survey.csv માં પડ્યો છે: 60 હરોળ, ચાર ખાનાં. તમે બરાબર આ જ આકાર પહેલાં બે વાર આયાત કરી ચૂક્યા છો: sqlite3 ના shell ના .import થી, અને pandas ના read_csv થી.

R નું રૂપ એક લીટી છે:

survey <- read.csv("survey.csv")

કોઈ import નું વિધાન નહીં, કોઈ module નહીં: data વાંચવું ભાષામાં જ જડેલું છે. આ પાઠનું કૌશલ્ય એ લીટી નથી: એ જાણવું છે કે R એની પાછળ શું કર્યું, અને કેવી રીતે તપાસવું.

Theory

જકાત અધિકારી

read.csv() એ R ની સરહદે બેઠેલો જકાત અધિકારી છે. File પ્રવેશે ત્યારે, અધિકારી:

1. પહેલી લીટીને લેબલ તરીકે વાંચે છે (header = TRUE, default).

2. દરેક ખાનાના પ્રકારને એની સામગ્રી પરથી ધારે છે: સંખ્યાઓ numeric બને, લખાણ character બને.

3. માલને data frame માં મહોર મારે છે: R નું કોષ્ટક.

સારા અધિકારીઓની પણ તપાસ થાય છે: દરેક આયાત પછી, તમે મહોર મારેલા પરિણામની તપાસ કરો છો. તપાસનું command છે str().

Practical

આયાત કરો, પછી તપાસો

# CSV: built into base R, one line
survey <- read.csv("survey.csv")     # header = TRUE is the default

# THE health check after every import:
str(survey)
# 'data.frame': 60 obs. of 4 variables:
#  $ roll   : int  101 102 103 ...
#  $ city   : chr  "Surat" "Navsari" ...
#  $ stay   : chr  "hostel" "day" ...
#  $ screen : num  120 90 240 ...

head(survey)        # first 6 rows, eyeball the values

# Excel needs a package: INSTALL once, LOAD every session
# install.packages("readxl")     # once per machine
library(readxl)                   # once per session
marks <- read_excel("marks.xlsx", sheet = 1)

# other delimiters: read.delim (tabs), read.csv2 (; with , decimals)

Theory

દરેક ટુકડાનો અર્થ

header = TRUE (default): લીટી 1 ખાનાંનાં નામ બને છે. header = FALSE સાથે, R નામ ઉપજાવે છે V1, V2, V3 અને તમારાં લેબલ data ની હરોળ બની જાય છે: એ જ header નો નિર્ણય જે તમે મળેલા દરેક આયાતના ઓજારમાં જોયો છે.

પ્રકારનું અનુમાન: આંકડાનું ખાનું int/num તરીકે આવે છે; લખાણવાળું કંઈ પણ character તરીકે આવે છે. (આધુનિક R હવે લખાણને આપોઆપ factors માં ફેરવતું નથી: તમે જાણીજોઈને ચઢાવો છો, આગલા પાઠમાં.)

Excel: base R .xlsx વાંચતું નથી. readxl package વાંચે છે: install.packages() યંત્ર દીઠ એક વાર, library() session દીઠ એક વાર: બે જુદી ક્રિયાઓ, અંતહીન રીતે ગૂંચવાતી.

Quiz

એક student એ ગઈકાલે install.packages("readxl") ચલાવ્યું. આજે, નવા RStudio ના session માં, read_excel("marks.xlsx") ભૂલ આપે છે: could not find function "read_excel". કેમ?

  1. Install કરવાથી package એક વાર disk પર આવે છે; દરેક નવા session એ હજી library(readxl) થી લોડ કરવું પડે
  2. Package દરરોજ ફરી install કરવું પડે
  3. read_excel ફક્ત CSV files પર ચાલે છે
  4. File ના નામને .csv નો પ્રત્યય જોઈએ
Show the answer

Install કરવાથી package એક વાર disk પર આવે છે; દરેક નવા session એ હજી library(readxl) થી લોડ કરવું પડે

બે ક્રિયાઓ, બે આયુષ્ય: install.packages() disk પર download કરે છે (યંત્ર દીઠ એક વાર); library() ચાલુ session માં લોડ કરે છે (session દીઠ એક વાર). નવું session ફક્ત base R લોડ કરીને શરૂ થાય છે, એટલે library(readxl) ચાલે નહીં ત્યાં સુધી read_excel અજાણ્યું છે. Install સામે load નો આ ભેદ R નો સૌથી વધુ પુછાતો package નો પ્રશ્ન છે, labs અને પરીક્ષાઓ બંનેમાં.

Think first

તપાસ ઘૂસણખોરને પકડે છે

str(survey) દેખાડે છે: $ screen: chr "120" "90" "absent" "240". Screen time નું ખાનું CHARACTER તરીકે આવ્યું. Tap કરતાં પહેલાં: આનું કારણ શું, એ કેમ મહત્ત્વનું છે, અને આ BCA303ની કઈ ક્ષણનું જોડિયું છે?

Show the answer

એક student ની નોંધ કહે છે "absent": ખાનામાં એક જ string, અને R ના એકસમાન-ખાનાના નિયમે દરેક સંખ્યાને લખાણમાં ફેરવી નાખી (syntax ના પાઠનો રૂપાંતરનો ફાંદો, હવે file ના સ્તરે). mean(survey$screen) હવે અશક્ય છે.

એ BCA303ના pandas/csv module માં સંખ્યાઓ strings તરીકે આવવા અને SQLite ના affinity ના આશ્ચર્યનું જોડિયું છે: લખાણનાં સ્વરૂપો કોઈ પ્રકાર વહન કરતાં નથી, એટલે આયાત કરનારા ધારે છે, અને એક ગંદું મૂલ્ય આખું ખાનું ઝેરી કરે છે. સમારકામ (NA સંભાળવું, as.numeric) બરાબર ત્યાં જ છે જ્યાં આગલો એકમ જાય છે.

Watch out

આયાતની checklist

1. File મળતી નથી? પહેલાં working directory: getwd(), પછી setwd() કે પૂરા રસ્તાથી સુધારો.

2. દરેક આયાત પછી str(): માપ બરાબર? પ્રકારો બરાબર?

3. Numeric ખાનું chr તરીકે દેખાય: કોઈ પણ આંકડાશાસ્ત્ર પહેલાં ભટકેલા લખાણનું મૂલ્ય શોધો.

4. V1, V2 જેવાં ખાનાંનાં નામ: તમારું header = FALSE (કે file માં ખરેખર header નથી).

ચાર તપાસ, દસ સેકન્ડ, અને પછીનો દરેક પાઠ ભરોસાપાત્ર data પર ચાલે છે.

Theory

એ જ ગીત, ત્રીજી ભાષા

તમારી પોતાની નિપુણતા નોંધો: header ની હરોળ, પ્રકારનું અનુમાન, working directory, આયાત ચકાસવી: આ વિચારો તમે SQLite ના shell માં શીખ્યા, pandas માં ફરી કર્યા, અને આજે એ મિનિટોમાં R માં ઊતરી ગયા. ઓજારનાં કૌશલ્યો જૂનાં થાય છે; ખ્યાલો ચક્રવૃદ્ધિથી વધે છે. આગલો પાઠ: data frame પોતે: તમે જેમાં પહેલેથી વિચારો છો એ DataFrame નો R નો જવાબ.

Summary

Key takeaways

  • read.csv("file.csv") CSV ને data frame તરીકે આયાત કરે છે; header = TRUE અને અલ્પવિરામનો વિભાજક defaults છે.
  • Excel ને readxl જોઈએ: install.packages() યંત્ર દીઠ એક વાર, library() SESSION દીઠ એક વાર.
  • R ખાનાંના પ્રકારો ધારે છે; એક ભટકેલી string numeric ખાનાને character બનાવે છે.
  • str() એ આયાત પછીની ફરજિયાત તપાસ છે: માપ વત્તા ખાના દીઠ પ્રકારો; head() હરોળ પર નજર નાખે છે.
  • File-not-found લગભગ હંમેશા working directory નો અર્થ કરે છે, ખૂટતી file નો નહીં.
  • Tabs માટે read.delim, અર્ધવિરામવાળી files માટે read.csv2; SPSS/JSON માટે packages છે.
  • Memory hook: જકાત અધિકારી મહોર મારે છે; તમે મહોરની તપાસ કરો છો.

Study this properly

This page is the lesson to read. In Gri-Learn the same topic is a graded deck: the self-checks are scored and your weak topics are tracked. Free to start.

Start this topic

Already have an account? Sign in

More from Introduction to R and working with Data

Gri-Learn · syllabus-mapped B.C.A. lessons in English, Hindi and Gujarati

Importing data into R from different file formats (CSV, Excel, etc.) · Statistical Methods and Data Analysis (MDC-03) · Gri-Learn