Hem sayıca hem de boyut olarak büyük dosyaları hızlıca analiz etmek, değiştirmek ve işlemek zorunda olduğunuz pek çok senaryo vardır. Ancak dosyalar genellikle metin tabanlı Virgülle Ayrılmış Değerler (CSV) dosyalarıdır. Bunları Excel, LibreOffice veya OpenOffice gibi standart hesap tabloları ile açmak makinenin belleğini aşırı yükler. Ayrıca, çok sayıda dosyayı tek bir yığında işlemek, beklenmedik bir dosya anomalisi nedeniyle birkaç saat sonra sık sık başarısız olur.
Kaçınılmaz olarak donmuş ekranlarda, yeniden başlatmalarda ve uzun bekleyişlerde çok zaman harcarsınız.
Oysa bu görevlerin çoğu birkaç satır kodla yapılabilir. Dahası, birkaç basit kabuk komut satırına aşina olmak, zaman kazandırmada ve hayal kırıklığını azaltmada uzun yol kat etmenizi sağlar.
Bu yazıda neredeyse her gün kullandığım bazı kabuk komutlarına genel bir bakış sunacağım. Umarım faydalı bulursunuz.
Hızlı Notlar
Not edin ki farklı kabuk türleri (bash, zsh, ...) vardır; bash en yaygınıdır çünkü OS X ve büyük Linux dağıtımlarında varsayılan kabuktur. Zsh (ve Oh My Zsh) popüler ve güçlü bir alternatiftir. Bu blog yazısındaki kabuk komutları OS X (macOS) üzerinde bash ile test edilmiştir ve diğer kabuklar ve ortamlarda da çalışmalıdır.
Aşağıdaki örneklerin tümü UCI Makine Öğrenimi deposundaki, "Census Income" olarak da bilinen ve burada bulunan adult veri kümesine dayanmaktadır. Bu veri kümesi, nüfus sayımı verilerine göre gelirin yılda \$50K'ı aşıp aşmadığını tahmin etmek için yaygın olarak kullanılır. 48842 satır ve 14 öznitelik ile, büyük bir veri kümesi değildir fakat örnekleri göstermek için yeterlidir. Veri .data uzantısıyla saklansa da iyi biçimlendirilmiş bir CSV dosyasıdır. Takip etmek için veri kümesini indirmekten çekinmeyin!
wc ile Sayma
Yeni bir metin tabanlı dosya verildiğinde, içinde kaç satır olduğunu bilmek isteyebilirsiniz. Bu, kelime sayacı wc -l komutuyla yapılabilir:
Bu, adult.data dosyasının 32562 satır içerdiğini söyler. -l bayrağı, wc'ye satırları saymasını söyler. Ancak wc'yi -w bayrağını kullanarak kelimeleri saymak için de kullanabilirsiniz.
adult.data dosyası yaklaşık 500 bin kelime içeriyor.
wc komutu, basit bir ls -l komutunun çıktısını wc'ye girdi olarak kullanarak bir dizindeki dosya sayısını da sayabilir. Bir komutun çıktısını boru sembolü | ile başka bir komuta girdi olarak kullanmak, pipelining olarak adlandırılan kullanışlı bir kabuk desenidir. Bu yazı boyunca birkaç örnekte göreceksiniz.
Şimdi çok sayıda dosyanın bulunduğu bir klasöre sahip olduğunuzu varsayın. Aşağıdaki komut size tam olarak kaç dosya içerdiğini söyleyecektir:
Joker karakterler ve alt klasörler eklemeye başladığınızda wc için daha pek çok kullanım vardır.
Şimdi adult.data dosyanıza dönelim ve head komutuyla ilk satırlara bakalım. Varsayılan olarak head 10 satır verir; -n bayrağını kullanarak çıktıyı ilk 2 satırla sınırlayabilirsiniz.
Ve dosyada bir başlık satırı olmadığını fark edersiniz. Sütun adları dosyanın içinde değil. cat komutunu kullanarak iki dosyayı birleştirip başlık satırını ekleyebilirsiniz.
Dosyaları cat ile Birleştirme
cat komutu bir dosyanın içeriğini standart çıktıya (terminalinize) yazar. Ayrıca bir dizi dosyayı birleştirmek için de kullanılabilir. cat file_1.csv file_2.csv > target_file.csv komutu, hem file_1.csv hem de file_2.csv içeriğini target_file.csv dosyasında birleştirir; file_2.csv'yi file_1.csv'nin sonuna ekler.
Başlık dosyası orijinal veri kümesinde yok ve bunu oluşturmanız gerekiyor. Bunu yapmak için, virgülle ayrılmış sütun adları listesini header.csv dosyasına echo ile yazarsınız.
Bu örnekte, cat çıktısını adult.csv dosyasına boşaltmak için kabuk yönlendirme karakteri > kullandınız. >, dosya yoksa oluşturur, varsa içeriğini tamamen değiştirir. Sembolü iki kez kullanmak >>, mevcut bir dosyaya yeni içeriği ekler ve içeriğini silmez.
Şimdi header.csv dosyasını adult.data dosyasının başına ekleyelim. Aynı zamanda, adult.data'yı adult.csv olarak yeniden adlandırırsınız çünkü sonuçta bu bir CSV biçimli dosyadır.
Bir diğer sık veri madenciliği senaryosu, dosya bozuk ya da kötü biçimlendirilmiş olduğunda (örneğin UTF-8 olmayan karakterler veya yanlış yere konmuş virgül) ortaya çıkar. Bu dosyayı sed komutunu kullanarak aslında açmadan düzeltebilirsiniz.
Genel sed deseni şöyledir
$ sed"s/<string to replace>/<string to replace it with>/g"<source_file>><target_file>.Altyapı:
adult.csv veri kümesi, eksik değeri belirtmek için ? karakterini kullanır. Bu karakteri sed ile daha uygun bir varsayılan değerle değiştirebilirsiniz. Boş dize, bir eksik değerin göstergesi olarak tercih edilir; çünkü veriyi bir Pandas DataFrame'ine yüklerkenNaN olarak yorumlanır.
Bu, ? ile gösterilen en az bir eksik değeri olan 2399 satırın sayımını verir. Aşağıdaki komut, ? içeren tüm sütunları boş bir dizeyle değiştirecektir. Yalnızca ? içeren ve ardından bir boşluk gelen tüm hücreler artık gerçekten boş olacaktır.
Veri kümesinin başka yerlerinde bulunabilecek geçerli soru işaretlerini değiştirmemek için kaynak ve hedef dizelerde sütun ayırıcı , kullandığınıza dikkat edin.
Büyük Bir Dosyadan Alt Küme Oluşturma
Diyelim ki 30 milyondan fazla satıra sahip bir dosyayla uğraşıyorsunuz. Python veya R betiğinizi yazarken, tüm veri kümesini belleğe yüklemek zorunda kalmamak için iş akışınızı yalnızca orijinal büyük dosyanın bir örneklemi üzerinde test etmek isteyeceksiniz. Orijinal veri kümesinden bir alt örnek oluşturmak için head ve tail kombinasyonunu kullanabilirsiniz.
head dosyaların ilk kısmını çıktı verir;
tail dosyaların son kısmını çıktı verir
Daha önce gördüğünüz gibi, bu komutlar çıktıdaki satır sayısını kısıtlayan --lines anlamına gelen -n bayrağını alır. tail ayrıca, dosyanın sonuna satırlar eklendikçe eklenen verileri çıktılayan ve özellikle tail -f <logfile> kullanarak betikleriniz çalışırken günlük dosyalarını izlemek için kullanışlı olan --follow anlamına gelen -f bayrağını da alır.
Boru sembolü |'i head ve tail ile karıştırarak, kaynak dosyanın içinden belirli sayıda satır çıkarabilir ve içeriği bir alt küme dosyasına aktarabilirsiniz. Örneğin, 100. satırdan başlayarak 20 satır çıkarmak için:
Önce head ile first_line + number_of_lines kadar satır aldığınıza ve ardından tail ile number_of_lines kadarını seçtiğinize dikkat edin. Genel alt küme komutu şöyledir:
$ head -n <total_lines><source_file>| tail -n <number_of_lines>><target_file>Altyapı:
burada total_lines = first_line + number_of_lines. Ancak, yeni örneklenen dosyanız artık başlık satırını içermiyor. Daha önce oluşturduğumuz header.csv dosyasıyla alt küme dosyasını cat kullanarak birleştirip başlığı nasıl geri ekleyeceğimizi zaten biliyoruz:
cat kullanırken kaynaklardan biriyle aynı ada sahip bir dosyayı hedef olarak kullanmanın beklenmedik dosya içeriğine yol açacağını unutmayın; bu nedenle adult\_sample.csv kaynak dosya adını hedef olarak kullanmadınız ve bunun yerine adult\_sample\_with\_header.csv adlı yeni bir dosya oluşturdunuz. cat komutunun çıktısı olarak yeni bir dosya oluşturmak daha iyidir.
Yinelenenleri uniq ile Bulma
uniq komutuyla bir dosyadaki bitişik tekrar eden satırları bulabilirsiniz. uniq birkaç bayrak alır; en kullanışlı olanları şunlardır:
uniq -c: her satıra tekrar sayısını ekler;
uniq -d: yalnızca yinelenen satırları çıktı verir; ve
uniq -u: yalnızca benzersiz satırları çıktı verir.
Ancak uniq akıllı bir komut değildir. Satırlar bitişik değilse tekrarlar tespit edilmez. Bu da önce dosyayı sort etmeniz gerektiği anlamına gelir. Bu komut adult.csv içindeki yinelenen satırların sayısını hesaplar.
ve 23 tekrar olduğunu gösterir. Aşağıdaki komut, tekrar sayıları eklenmiş tüm satırların çıktısını alır, tersine sıralar ve ilk 3 tekrar eden satırı verir:
Farklı bayraklarla sort ve uniq'i birleştirerek elde edilebilecek pek çok güçlü seçenek vardır. Bu komutları daha fazla keşfetmek için man sort ve man uniq'i kullanın.
Sütunları cut ile Seçme
CSV dosyaları ve kabuk komutlarıyla ilgili harika olan şey, belirli bir sütunu seçmek için cut kullanarak sütun düzeyinde de çalışabilmenizdir. cut iki ana bayrak alır: sütun ayırıcısını belirtmek için -d ve üzerinde çalışmak istediğiniz sütunları belirtmek için -f. Aşağıdaki örnekte, workclass kategorik değişkeninin (sütun 2) aldığı benzersiz değer sayısını bulmak için cut kullanırsınız.
Önce workclass sütununu seçin ve doğru sütunu aldığınızı doğrulamak için head'e yönlendirin:
Bu da örneğin 1837 adet boş değer olduğunu ve ana sınıfın açık ara Private sınıfı olduğunu, 22969 gözlemle yer aldığını söyler.
Yukarıdaki komut satırı, adult.csv verisini içeren bir DataFrame'e uygulanan value_counts() yöntemine benzer.
Döngüler
Şimdiye kadar çoğunlukla tek bir dosya üzerinde çalıştınız. Çok sayıda dosyayı yeniden adlandırmak, işlemek veya aktarmak için kabuk araç takımımıza döngüler eklemelisiniz. Bash kabuğunda döngünün genel biçimi şöyledir:
Döngüler yazmak ve değişkenler kullanmak, daha karmaşık dosya işlemlerinin kapısını açar ve bu giriş yazısının kapsamının ötesinde olan kabuk betiklemesine geçit oluşturur. Ancak küçük başlayıp güveniniz arttıkça geliştirdiğinizde kabuk betikleme yeterince basittir.
Sonuç
Kabuk komut satırları, veri bilimci olarak günlük işinizde son derece kullanışlıdır. Keşfedilebilecek daha pek çok örnek ve kullanım durumu vardır. Ve göreceğiniz gibi, mevcut çok sayıda kabuk komutu ve ilgili bayrak kullanılarak belirli bir sonuca ulaşmanın genellikle farklı yolları vardır. Bu durumda işleri basit tutmak her zaman kazanan stratejidir.
Buradaki örneklerin, kabuk komutlarını veri işleme araç takımınıza entegre etmenize yardımcı olmasını umarım. Twitter üzerinden kabuk ipuçlarınızı benimle paylaşmaktan çekinmeyin: @alexip.
Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Hem sayıca hem de boyut olarak büyük dosyaları hızlıca analiz etmek, değiştirmek ve işlemek zorunda olduğunuz pek çok senaryo vardır. Ancak dosyalar genellikle metin tabanlı Virgülle Ayrılmış Değerler (CSV) dosyalarıdır. Bunları Excel, LibreOffice veya OpenOffice gibi standart hesap tabloları ile açmak makinenin belleğini aşırı yükler. Ayrıca, çok sayıda dosyayı tek bir yığında işlemek, beklenmedik bir dosya anomalisi nedeniyle birkaç saat sonra sık sık başarısız olur.
Kaçınılmaz olarak donmuş ekranlarda, yeniden başlatmalarda ve uzun bekleyişlerde çok zaman harcarsınız.
Oysa bu görevlerin çoğu birkaç satır kodla yapılabilir. Dahası, birkaç basit kabuk komut satırına aşina olmak, zaman kazandırmada ve hayal kırıklığını azaltmada uzun yol kat etmenizi sağlar.
Bu yazıda neredeyse her gün kullandığım bazı kabuk komutlarına genel bir bakış sunacağım. Umarım faydalı bulursunuz.
Hızlı Notlar
Not edin ki farklı kabuk türleri (bash, zsh, ...) vardır; bash en yaygınıdır çünkü OS X ve büyük Linux dağıtımlarında varsayılan kabuktur. Zsh (ve Oh My Zsh) popüler ve güçlü bir alternatiftir. Bu blog yazısındaki kabuk komutları OS X (macOS) üzerinde bash ile test edilmiştir ve diğer kabuklar ve ortamlarda da çalışmalıdır.
Aşağıdaki örneklerin tümü UCI Makine Öğrenimi deposundaki, "Census Income" olarak da bilinen ve burada bulunan adult veri kümesine dayanmaktadır. Bu veri kümesi, nüfus sayımı verilerine göre gelirin yılda \$50K'ı aşıp aşmadığını tahmin etmek için yaygın olarak kullanılır. 48842 satır ve 14 öznitelik ile, büyük bir veri kümesi değildir fakat örnekleri göstermek için yeterlidir. Veri
.datauzantısıyla saklansa da iyi biçimlendirilmiş bir CSV dosyasıdır. Takip etmek için veri kümesini indirmekten çekinmeyin!wcile SaymaYeni bir metin tabanlı dosya verildiğinde, içinde kaç satır olduğunu bilmek isteyebilirsiniz. Bu, kelime sayacı
wc -lkomutuyla yapılabilir:Bu,
adult.datadosyasının 32562 satır içerdiğini söyler.-lbayrağı,wc'ye satırları saymasını söyler. Ancakwc'yi-wbayrağını kullanarak kelimeleri saymak için de kullanabilirsiniz.adult.datadosyası yaklaşık 500 bin kelime içeriyor.wckomutu, basit birls -lkomutunun çıktısınıwc'ye girdi olarak kullanarak bir dizindeki dosya sayısını da sayabilir. Bir komutun çıktısını boru sembolü|ile başka bir komuta girdi olarak kullanmak, pipelining olarak adlandırılan kullanışlı bir kabuk desenidir. Bu yazı boyunca birkaç örnekte göreceksiniz.Şimdi çok sayıda dosyanın bulunduğu bir klasöre sahip olduğunuzu varsayın. Aşağıdaki komut size tam olarak kaç dosya içerdiğini söyleyecektir:
Joker karakterler ve alt klasörler eklemeye başladığınızda
wciçin daha pek çok kullanım vardır.Şimdi
adult.datadosyanıza dönelim veheadkomutuyla ilk satırlara bakalım. Varsayılan olarakhead10 satır verir;-nbayrağını kullanarak çıktıyı ilk 2 satırla sınırlayabilirsiniz.Ve dosyada bir başlık satırı olmadığını fark edersiniz. Sütun adları dosyanın içinde değil.
catkomutunu kullanarak iki dosyayı birleştirip başlık satırını ekleyebilirsiniz.Dosyaları
catile Birleştirmecatkomutu bir dosyanın içeriğini standart çıktıya (terminalinize) yazar. Ayrıca bir dizi dosyayı birleştirmek için de kullanılabilir.cat file_1.csv file_2.csv > target_file.csvkomutu, hemfile_1.csvhem defile_2.csviçeriğinitarget_file.csvdosyasında birleştirir;file_2.csv'yifile_1.csv'nin sonuna ekler.Başlık dosyası orijinal veri kümesinde yok ve bunu oluşturmanız gerekiyor. Bunu yapmak için, virgülle ayrılmış sütun adları listesini
header.csvdosyasınaechoile yazarsınız.Bu örnekte,
catçıktısınıadult.csvdosyasına boşaltmak için kabuk yönlendirme karakteri>kullandınız.>, dosya yoksa oluşturur, varsa içeriğini tamamen değiştirir. Sembolü iki kez kullanmak>>, mevcut bir dosyaya yeni içeriği ekler ve içeriğini silmez.Şimdi
header.csvdosyasınıadult.datadosyasının başına ekleyelim. Aynı zamanda,adult.data'yıadult.csvolarak yeniden adlandırırsınız çünkü sonuçta bu bir CSV biçimli dosyadır.adult.csv'nin ilk satırının sütun adlarını içerdiğini şu komutla kontrol edin:Bir Dosyayı
sedile DeğiştirmeBir diğer sık veri madenciliği senaryosu, dosya bozuk ya da kötü biçimlendirilmiş olduğunda (örneğin UTF-8 olmayan karakterler veya yanlış yere konmuş virgül) ortaya çıkar. Bu dosyayı
sedkomutunu kullanarak aslında açmadan düzeltebilirsiniz.Genel
seddeseni şöylediradult.csvveri kümesi, eksik değeri belirtmek için?karakterini kullanır. Bu karakterisedile daha uygun bir varsayılan değerle değiştirebilirsiniz. Boş dize, bir eksik değerin göstergesi olarak tercih edilir; çünkü veriyi bir Pandas DataFrame'ine yüklerkenNaNolarak yorumlanır.Bu,
?ile gösterilen en az bir eksik değeri olan 2399 satırın sayımını verir. Aşağıdaki komut,?içeren tüm sütunları boş bir dizeyle değiştirecektir. Yalnızca?içeren ve ardından bir boşluk gelen tüm hücreler artık gerçekten boş olacaktır.Veri kümesinin başka yerlerinde bulunabilecek geçerli soru işaretlerini değiştirmemek için kaynak ve hedef dizelerde sütun ayırıcı
,kullandığınıza dikkat edin.Büyük Bir Dosyadan Alt Küme Oluşturma
Diyelim ki 30 milyondan fazla satıra sahip bir dosyayla uğraşıyorsunuz. Python veya R betiğinizi yazarken, tüm veri kümesini belleğe yüklemek zorunda kalmamak için iş akışınızı yalnızca orijinal büyük dosyanın bir örneklemi üzerinde test etmek isteyeceksiniz. Orijinal veri kümesinden bir alt örnek oluşturmak için
headvetailkombinasyonunu kullanabilirsiniz.headdosyaların ilk kısmını çıktı verir;taildosyaların son kısmını çıktı verirDaha önce gördüğünüz gibi, bu komutlar çıktıdaki satır sayısını kısıtlayan
--linesanlamına gelen-nbayrağını alır.tailayrıca, dosyanın sonuna satırlar eklendikçe eklenen verileri çıktılayan ve özellikletail -f <logfile>kullanarak betikleriniz çalışırken günlük dosyalarını izlemek için kullanışlı olan--followanlamına gelen-fbayrağını da alır.Boru sembolü
|'iheadvetailile karıştırarak, kaynak dosyanın içinden belirli sayıda satır çıkarabilir ve içeriği bir alt küme dosyasına aktarabilirsiniz. Örneğin, 100. satırdan başlayarak 20 satır çıkarmak için:Önce
headile first_line + number_of_lines kadar satır aldığınıza ve ardındantailile number_of_lines kadarını seçtiğinize dikkat edin. Genel alt küme komutu şöyledir:burada
total_lines = first_line + number_of_lines. Ancak, yeni örneklenen dosyanız artık başlık satırını içermiyor. Daha önce oluşturduğumuzheader.csvdosyasıyla alt küme dosyasınıcatkullanarak birleştirip başlığı nasıl geri ekleyeceğimizi zaten biliyoruz:catkullanırken kaynaklardan biriyle aynı ada sahip bir dosyayı hedef olarak kullanmanın beklenmedik dosya içeriğine yol açacağını unutmayın; bu nedenleadult\_sample.csvkaynak dosya adını hedef olarak kullanmadınız ve bunun yerineadult\_sample\_with\_header.csvadlı yeni bir dosya oluşturdunuz.catkomutunun çıktısı olarak yeni bir dosya oluşturmak daha iyidir.Yinelenenleri
uniqile Bulmauniqkomutuyla bir dosyadaki bitişik tekrar eden satırları bulabilirsiniz.uniqbirkaç bayrak alır; en kullanışlı olanları şunlardır:uniq -c: her satıra tekrar sayısını ekler;uniq -d: yalnızca yinelenen satırları çıktı verir; veuniq -u: yalnızca benzersiz satırları çıktı verir.Ancak
uniqakıllı bir komut değildir. Satırlar bitişik değilse tekrarlar tespit edilmez. Bu da önce dosyayısortetmeniz gerektiği anlamına gelir. Bu komutadult.csviçindeki yinelenen satırların sayısını hesaplar.ve 23 tekrar olduğunu gösterir. Aşağıdaki komut, tekrar sayıları eklenmiş tüm satırların çıktısını alır, tersine sıralar ve ilk 3 tekrar eden satırı verir:
Farklı bayraklarla
sortveuniq'i birleştirerek elde edilebilecek pek çok güçlü seçenek vardır. Bu komutları daha fazla keşfetmek içinman sortveman uniq'i kullanın.Sütunları
cutile SeçmeCSV dosyaları ve kabuk komutlarıyla ilgili harika olan şey, belirli bir sütunu seçmek için
cutkullanarak sütun düzeyinde de çalışabilmenizdir.cutiki ana bayrak alır: sütun ayırıcısını belirtmek için-dve üzerinde çalışmak istediğiniz sütunları belirtmek için-f. Aşağıdaki örnekte,workclasskategorik değişkeninin (sütun 2) aldığı benzersiz değer sayısını bulmak içincutkullanırsınız.Önce
workclasssütununu seçin ve doğru sütunu aldığınızı doğrulamak için head'e yönlendirin:Şimdi benzersizleri saymak için, cut çıktısını sıralayıp sonucu
uniq -c'ye şu şekilde yönlendirirsiniz:Bu da örneğin 1837 adet boş değer olduğunu ve ana sınıfın açık ara
Privatesınıfı olduğunu, 22969 gözlemle yer aldığını söyler.Yukarıdaki komut satırı,
adult.csvverisini içeren bir DataFrame'e uygulananvalue_counts()yöntemine benzer.Döngüler
Şimdiye kadar çoğunlukla tek bir dosya üzerinde çalıştınız. Çok sayıda dosyayı yeniden adlandırmak, işlemek veya aktarmak için kabuk araç takımımıza döngüler eklemelisiniz. Bash kabuğunda döngünün genel biçimi şöyledir:
Bunu işe koşalım. Dosya adlarında boşluk bulunan 1000 dosyanız olduğunu ve her boşluğu bir alt çizgi "_" ile değiştirmek istediğinizi hayal edin.
Bu örnekte,
replace_sourcevereplace_targetadında iki değişken tanımlarsınız*.csvdosyaları üzerinde döngü kurarsınızfilenameiçin, her boşluğu bir alt çizgiyle değiştirerek birnew_filenameoluşturursunuzmvkomutuyla dosyayı mevcut adından yeni adıyla yeniden adlandırırsınızAslında, yalnızca bir dizindeki dosyalar üzerinde döngü kurmakla kalmadınız, aynı zamanda değişkenler de oluşturdunuz.
Değişkenler
Bu kabuk komutlarına girişe değişkenlerle son vereceksiniz. Kabukta değişken oluşturma basitçe şöyle yapılır
Örneğin:
'=' işaretinin etrafında boşluk olmadığını unutmayın.
var = '<a string>'çalışmaz. Değişken değerini döndürmek için basitçeechoedin:Ve bir betikte kullanmak için, daha önce gördüğünüz gibi tırnak içine alın:
Döngüler yazmak ve değişkenler kullanmak, daha karmaşık dosya işlemlerinin kapısını açar ve bu giriş yazısının kapsamının ötesinde olan kabuk betiklemesine geçit oluşturur. Ancak küçük başlayıp güveniniz arttıkça geliştirdiğinizde kabuk betikleme yeterince basittir.
Sonuç
Kabuk komut satırları, veri bilimci olarak günlük işinizde son derece kullanışlıdır. Keşfedilebilecek daha pek çok örnek ve kullanım durumu vardır. Ve göreceğiniz gibi, mevcut çok sayıda kabuk komutu ve ilgili bayrak kullanılarak belirli bir sonuca ulaşmanın genellikle farklı yolları vardır. Bu durumda işleri basit tutmak her zaman kazanan stratejidir.
Buradaki örneklerin, kabuk komutlarını veri işleme araç takımınıza entegre etmenize yardımcı olmasını umarım. Twitter üzerinden kabuk ipuçlarınızı benimle paylaşmaktan çekinmeyin: @alexip.
Bilgisayarınızda Veri Bilimi Ortamı Kurma eğitimimize göz atın.