Tıpta uzmanlık tezlerinin veri analizi aşamasında sık yaşanan bir sahne var: Excel'de hazırlanan 450 satırlık bir tablo (hasta demografikleri, laboratuvar değerleri, takip verileri) SPSS'te açıldığında 12 sütun metin olarak gelir, Türkçe karakterler bozulur, tarihler beş haneli sayıya döner. Bu sorunların hemen tamamı, aktarımdan önce yapılacak birkaç hazırlık adımıyla önlenebilir.
Bu yazı aktarım sürecinin kendisine odaklanıyor: dosya hazırlığından karakter kodlamasına, değişken tanımlamadan doğrulamaya kadar tüm adımları sıralıyoruz. Aktarımda karşılaşılan spesifik hatalar ve tuzaklar için Excel-SPSS hataları yazımıza bakabilirsiniz.
Neden bu kadar sorunlu?
Excel bir hesap tablosu programı, SPSS bir istatistik yazılımı. İkisinin veri anlama biçimi temelden farklı.
Excel'de bir hücreye "1" yazıldığında program bunu sayı da metin de olarak yorumlayabiliyor; hangisi olduğu hücre formatına bağlı. SPSS ise her değişkenin tipini (sayısal, metin, tarih), ölçek düzeyini (scale, ordinal, nominal) ve eksik veri kodunu net olarak bilmek istiyor. Verinin nasıl yapılandırılması gerektiğine dair pratik ilkeler için Broman ve Woo'nun (2018) çalışması iyi bir başvuru kaynağı.
Bu felsefe farkı, hazırlıksız aktarımlarda sorun çıkarıyor. Ama biraz hazırlıkla sorunsuz geçiş sağlamak mümkün.
Adım 1: Excel dosyasını hazırlama
Değişken adlandırma kuralları küçük ama kritik bir detay:
| Excel'deki Ad | Sorun | SPSS Uyumlu |
|---|---|---|
| Hasta Adı | Boşluk | hasta_adi |
| Yaş (yıl) | Parantez ve boşluk | yas_yil |
| 1.ölçüm | Sayıyla başlıyor | olcum_1 |
| BMI kg/m2 | Özel karakter | bmi_kg_m2 |
Adım 2: karakter kodlaması (encoding)
Türkçe karakterler (ş, ç, ğ, ı, ö, ü, İ) veri aktarımında en sık sorun çıkaran unsur. Excel'de doğru görünen "şikâyet" kelimesi SPSS'te "Åikâyet" olabiliyor.
Bunun nedeni karakter kodlaması (encoding) uyumsuzluğu. Eski .xls formatı Windows-1254 (Türkçe) kodlaması kullanırken, .xlsx UTF-8 destekliyor. SPSS ise sürümüne göre farklı varsayılan kodlama kullanabiliyor.
Çözüm: SPSS'te Edit > Options > General sekmesinde "Character Encoding for Data and Syntax" ayarını Unicode (UTF-8) yapmak ve dosyayı .xlsx olarak kaydetmek. Hâlâ sorun varsa Excel'i önce CSV (UTF-8) olarak kaydedip SPSS'te CSV okuma sihirbazıyla açmak; burada kodlamayı elle seçebiliyorsunuz.
İpucu
Excel'de bir sütunun gerçekten sayısal olup olmadığını test etmenin kolay yolu: sütundaki herhangi bir hücreye TOPLA (SUM) fonksiyonu uygulayın. Sonuç sıfır çıkıyorsa ve hücrelerde veri varsa, o sütun metin olarak biçimlendirilmiş demektir ve SPSS'e aktarımda metin (string) değişken oluşmasına neden olur.
Adım 3: SPSS'e içe aktarma
File > Open > Data yolundan Excel dosyanızı seçin. Açılan pencerede "Read variable names from the first row of data" seçeneğini işaretleyin; ilk satırdaki değişken adlarınız SPSS'e aktarılır.
İçe aktarma sonrası Data View'da ilk 20-30 satırı hızlıca taramak faydalı:
- Sayısal değerler doğru mu?
- Tarihler mantıklı mı yoksa beş haneli sayılar mı?
- Türkçe karakterler sağlam mı?
- Gözlem (case) sayısı Excel'dekiyle eşleşiyor mu?
Bu hızlı kontrol, büyük sorunları erken yakalatıyor.
Adım 4: Variable View düzenlemesi
SPSS'in asıl gücü burada. Variable View sekmesinde her değişken için 8 kritik alan var:
Type: Sayısal mı, metin mi, tarih mi? Excel'den gelen otomatik atama çoğu zaman yanlış.
Width ve Decimals: Sayısal değişkenlerde ondalık basamak sayısı. Yaş için 0, BMI için 1, p değeri için 3 gibi.
Label: Değişkenin uzun açıklaması. "yas_yil" yerine "Yaş (yıl olarak)" gibi. Analiz çıktılarında bu etiket görünüyor.
Values: Kategorik değişkenlerin değer etiketleri. 1=Erkek, 2=Kadın gibi. Frekans tablolarında ve grafiklerde bu etiketler okunuyor.
Missing: Eksik veri kodları. 99 veya 999 gibi değerleri burada tanımlarsanız SPSS analizlerde otomatik olarak eksik (missing) sayıyor.
Measure: Ölçek düzeyi. Scale (sürekli), Ordinal (sıralı) veya Nominal (kategorik). SPSS otomatik atama yapıyor ama çoğu zaman yanlış. Likert ölçeği ordinal olmalı, cinsiyet nominal olmalı, yaş scale olmalı.
| Değişken | Doğru Tür | Doğru Ölçek | Sık Yapılan Hata |
|---|---|---|---|
| Yaş | Numeric | Scale | Metin olarak aktarılır |
| Cinsiyet (1/2) | Numeric | Nominal | Scale olarak kalır |
| Likert (1-5) | Numeric | Ordinal | Nominal atanır |
| Hemoglobin | Numeric | Scale | Ondalık hatasıyla metin olur |
| Ameliyat tarihi | Date | - | Metin olarak aktarılır |
Bu adım zaman alıcı görünüyor ama analiz sırasında çok daha büyük zaman kayıplarını önlüyor.
Adım 5: doğrulama
İçe aktarma ve düzenleme bittikten sonra her şeyin doğru aktarıldığını teyit etmek gerekiyor.
Frekans kontrolü: Analyze > Descriptive Statistics > Frequencies ile her değişkenin dağılımını kontrol edin. Beklenmedik kategoriler (mesela cinsiyet değişkeninde 12 farklı değer) aktarım hatası işareti.
Min-maks kontrolü: Analyze > Descriptive Statistics > Descriptives ile sayısal değişkenlerin aralığını inceleyin. Yaş değişkeninde minimum 0, maksimum 9500 gibi değerler görüyorsanız bir yerde toplam satırı veya kodlama hatası var.
Gözlem sayısı kontrolü: Excel'deki satır sayısı ile SPSS'teki gözlem (case) sayısı eşleşmeli. Fark varsa boş satırlar veya gizli satırlar olabilir.
Eksik veri kontrolü: Beklediğiniz eksik veri sayısı ile SPSS'in gösterdiği eksik (missing) sayısı uyumlu mu? Fazla eksik varsa aktarım sırasında veri kaybolmuş olabilir.
Bu doğrulama adımlarını her aktarımda yapmak bir refleks hâline gelmeli.
Büyük dosyalar için CSV alternatifi
500+ satırlık veya 100+ sütunluk dosyalarda doğrudan .xlsx içe aktarma bazen yavaş kalabiliyor veya donma riski taşıyor.
CSV (UTF-8) formatı bu durumda daha güvenilir. Excel'de File > Save As > CSV UTF-8 olarak kaydedin; SPSS'te File > Read Text Data ile açın. CSV sihirbazında ayırıcı (delimiter), kodlama ve değişken adı seçeneklerini elle belirleyebiliyorsunuz; bu da daha fazla kontrol sunuyor.
CSV'nin dezavantajı: formüller, renkler ve formatlar kaybolur. Ama zaten SPSS'e bunların hiçbirini değil, yalnızca değerleri aktarıyorsunuz.
SPSS formatında kaydetmek
Tüm düzenlemeler bittikten sonra dosyayı .sav formatında kaydetmek kritik. Bu format değişken tiplerini, etiketleri, eksik veri tanımlarını ve ölçek düzeylerini koruyor; bir daha Excel'den içe aktarmaya gerek kalmıyor.
Etiketleme işlemini her seferinde tekrar yapmak istemiyorsanız SPSS syntax dosyası (.sps) yazabilirsiniz. Syntax ile tüm etiketleme ve düzenleme komutlarını kaydedip tek tıkla çalıştırabilirsiniz. Özellikle çok merkezli çalışmalarda farklı kurumlardan gelen benzer formattaki verilere aynı syntax'ı uygulamak büyük zaman tasarrufu sağlıyor.
Verileriniz hazır olduğunda analiz aşamasına geçmeden önce normallik testi sonuçlarını değerlendirmekte fayda var; hangi istatistik testini uygulayacağınız büyük ölçüde veri dağılımına bağlı.
Model İstatistik olarak veri aktarım sürecinde ve analiz aşamasında araştırmacılara rehberlik ediyoruz. Veri kontrolünden raporlamaya kadar tüm süreci birlikte yürütüyoruz; temiz aktarım, güvenilir analizin ilk adımı.
Kullanılan kaynaklar
- Broman KW, Woo KH. Data organization in spreadsheets. The American Statistician. 2018;72(1):2-10. · DOI