readxl ile Excel Dosyalarını İçe Aktarma
Sayfa seçimi ve hücre aralığı seçenekleriyle .xls ve .xlsx sayfalarını okuyun.
readxl ile Excel Dosyalarını İçe Aktarma, CoddyKit'te ücretsiz bir R Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, R Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. R Academy kursu toplamda 4 dersten oluşur.
Excel Dosyaları için readxl Neden Kullanılır?
Excel dosyaları (.xlsx ve .xls) iş ortamlarında her yerde kullanılır. readxl paketi, Excel'in yüklenmesini gerektirmeden ve Java bağımlılığı olmadan bu dosyaları okur. Birden çok sayfayı, adlandırılmış aralıkları ve hücre türü algılamayı destekler; sonuç olarak bir tibble döndürür.
library(readxl)
# readxl can read:
# .xlsx - modern Excel format (XML-based)
# .xls - older Excel format (binary)
# .xlsm - Excel with macros (reads data, ignores macros)
# Core functions:
# read_excel() - auto-detects .xls vs .xlsx
# read_xlsx() - always reads as .xlsx
# read_xls() - always reads as .xls
# excel_sheets() - lists all sheet names
cat('readxl requires no Java, no Excel installation!')excel_sheets() — Tüm Sayfaları Listeleme
excel_sheets('file.xlsx'), tüm sayfa adlarından oluşan bir karakter vektörü döndürür. Çalışma kitabının yapısını incelemek için okumadan önce bunu kullanın; ardından sayfa adını read_excel() işlevine geçirin.
library(readxl)
# Using readxl's built-in example file
path <- readxl_example('datasets.xlsx')
# List all sheets in the workbook
sheets <- excel_sheets(path)
print(sheets)
cat('\nNumber of sheets:', length(sheets))read_excel() — Temel Kullanım
read_excel(path), varsayılan olarak ilk sayfayı okur. Dosyanın .xls mi yoksa .xlsx mi olduğunu otomatik olarak algılar. Sonuç, veri üzerinden tahmin edilen sütun türlerine sahip bir tibble'dır.
library(readxl)
path <- readxl_example('datasets.xlsx')
# Read the first sheet (default)
df <- read_excel(path)
print(head(df, 4))
cat('\nDimensions:', nrow(df), 'rows x', ncol(df), 'cols')sheet Bağımsız Değişkeni — Ad veya Dizinle Seçme
Adla seçmek için sheet='Sheet1', konuma göre seçmek için sheet=2 kullanın (1 tabanlı). Her ikisi de geçerlidir. Sayfa sırası değişebileceğinden ad kullanmak daha dayanıklıdır; yineleme için dizin kullanmak daha pratiktir.
library(readxl)
path <- readxl_example('datasets.xlsx')
sheets <- excel_sheets(path)
print(sheets)
# Read by name
df_name <- read_excel(path, sheet = 'iris')
cat('iris sheet rows:', nrow(df_name), '\n')
# Read by index
df_idx <- read_excel(path, sheet = 2)
cat('Sheet 2 rows:', nrow(df_idx))range — Hücre Aralığı Okuma
range='A1:D10', Excel gösterimindeki yalnızca belirtilen hücre aralığını okur. Bu, çalışma sayfasında birden çok tablo bulunduğunda, biçimlendirme kenarlıkları olduğunda veya ihtiyaç duyduğunuz veri alanının dışında üstveriler yer aldığında kullanışlıdır.
library(readxl)
path <- readxl_example('datasets.xlsx')
# Read only the first 5 data rows of columns A-D
df <- read_excel(path, sheet='iris', range='A1:D6')
print(df)
cat('\nShape:', nrow(df), 'rows,', ncol(df), 'cols')col_names — Özel Sütun Adları
Başlık satırını atlamak ve sütunları otomatik olarak adlandırmak için col_names=FALSE ayarlayın. Özel adlar kullanmak (ve başlık satırını atlamak) için col_names bağımsız değişkenine bir karakter vektörü geçirin. Başlık farklı bir satırdaysa bunu skip ile birlikte kullanın.
library(readxl)
path <- readxl_example('datasets.xlsx')
# Read with custom column names (skip original header)
df <- read_excel(
path,
sheet = 'iris',
col_names = c('sepal_l','sepal_w','petal_l','petal_w','species'),
skip = 1 # Skip the original header row
)
print(head(df, 3))
print(names(df))skip Bağımsız Değişkeni — Üstveri Satırlarını Atlama
skip=n, okumaya başlamadan önce sayfanın ilk n satırını atlar. Çalışma sayfalarında gerçek veri tablosunun üzerinde rapor başlıkları, oluşturulma tarihleri veya başka üstveriler bulunduğunda kullanışlıdır.
library(readxl)
# Simulating a sheet with metadata rows (using a range instead)
path <- readxl_example('datasets.xlsx')
# Skip first row (pretend it has a title)
# and read only first 5 data rows
df <- read_excel(
path,
sheet = 'chickwts',
skip = 1, # Skip first data row
col_names = FALSE # Row 2 has no header now
)
print(head(df, 4))col_types — Sütun Türlerini Belirtme
Tür tahminini geçersiz kılmak için col_types kullanın. Geçerli türler şunlardır: 'text', 'numeric', 'date', 'logical', 'skip' (sütunu kaldırır) ve 'list' (karışık türdeki sütunlar için).
library(readxl)
path <- readxl_example('datasets.xlsx')
# Read with explicit column types
# iris sheet: 4 numeric + 1 text
df <- read_excel(
path,
sheet = 'iris',
col_types = c('numeric','numeric','numeric','numeric','text')
)
print(sapply(df, class))map() ile Tüm Sayfaları Okuma
Tüm sayfaları aynı anda adlandırılmış bir listeye okumak için excel_sheets() ile purrr::map() işlevini birleştirin. Listedeki her öğe, ilgili sayfaya ait bir tibble'dır. Tüm sayfaları satır bazında birleştirmek için map_df(.id='sheet') kullanın.
library(readxl)
library(purrr)
path <- readxl_example('datasets.xlsx')
sheets <- excel_sheets(path)
# Read all sheets into a named list
all_data <- map(sheets, ~read_excel(path, sheet=.x))
names(all_data) <- sheets
# Show dimensions of each sheet
map_df(all_data, function(df) {
data.frame(rows=nrow(df), cols=ncol(df))
}, .id='sheet')n_max — Okunan Satırları Sınırlama
n_max=n, başlık hariç en fazla n veri satırı okur. Büyük çalışma sayfalarını önizlemek, deneme için bir örnek yüklemek veya belleğin kısıtlı olduğu ortamlarda verileri parçalar halinde okumak için kullanın.
library(readxl)
path <- readxl_example('datasets.xlsx')
# Preview just the first 5 rows
preview <- read_excel(path, sheet='iris', n_max=5)
print(preview)
cat('\nPreviewed', nrow(preview), 'of', nrow(read_excel(path, sheet='iris')), 'rows')na Argümanı — Eksik Değer Dizeleri
readr gibi readxl de hangi metin dizelerinin NA olarak okunacağını belirleyen bir na argümanını kabul eder. Excel, eksik değerleri genellikle boş hücreler (otomatik olarak işlenir) veya 'N/A' ya da '#N/A' gibi yer tutucu dizeler olarak depolar.
library(readxl)
path <- readxl_example('datasets.xlsx')
# Handle Excel error strings and custom NA markers
# In real files these might be '#N/A', '#VALUE!', 'N/A', '-'
df <- read_excel(
path,
sheet = 'iris',
na = c('', 'NA', 'N/A', '#N/A', '-')
)
cat('Missing values per column:\n')
print(colSums(is.na(df)))Hızlı Kontrol
excel_sheets('file.xlsx') ne döndürür?
Özet: Excel Dosyalarını İçe Aktarma
readxl ile Excel içe aktarma için temel çıkarımlar:
excel_sheets(path)— tüm sayfa adlarını listelerread_excel(path)— ilk sayfayı okur; .xls/.xlsx uzantılarını otomatik algılarsheet='Name'veyasheet=2— sayfayı adına ya da dizinine göre seçerrange='A1:D10'— belirtilen hücre aralığını okurcol_names, skip— üst veri satırlarını ve özel başlıkları işlercol_types = c('text','numeric','date','skip')— tür tahminini geçersiz kılarn_max=5— büyük dosyaları önizler;na=c('N/A','#N/A')— özel NA dizeleri- Tüm sayfalar için
map(excel_sheets(path), ~read_excel(path, sheet=.x))ile birlikte kullanın
library(readxl)
library(purrr)
path <- readxl_example('datasets.xlsx')
# Full workflow: discover, select, read
cat('Sheets available:', paste(excel_sheets(path), collapse=', '), '\n\n')
# Read a specific sheet with explicit types
df <- read_excel(
path,
sheet = 'iris',
col_types = c('numeric','numeric','numeric','numeric','text'),
n_max = 5
)
print(df)Sıkça Sorulan Sorular
“readxl ile Excel Dosyalarını İçe Aktarma” dersi ücretsiz mi?
Evet — “readxl ile Excel Dosyalarını İçe Aktarma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve R Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. R Academy kursu toplamda 4 dersten oluşur.
“readxl ile Excel Dosyalarını İçe Aktarma” dersinde ne öğreneceğim?
Sayfa seçimi ve hücre aralığı seçenekleriyle .xls ve .xlsx sayfalarını okuyun. R Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
R Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te R Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“readxl ile Excel Dosyalarını İçe Aktarma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu R Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her R Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- read_csv() ile CSV Dosyalarını Okuma
- TSV ve Sabit Genişlikta Dosyaları Ayrıştırma
- readxl ile Excel Dosyalarını İçe Aktarma
- Verileri Birden Fazla Biçimde Yazma