Birkaç gün önce, bir arkadaşım grup sohbetimizi görselleştirmenin ilginç olacağını söyledi - en çok kimin konuştuğu, kimin ardından kimin en çok konuştuğu ve en sık kullanılan kelimelerin hangileri olduğu gibi şeyleri görmenin ilginç olacağını söyledi. Bu yazıda, ben bundan kullanılarak nasıl yaptığını göstermek
pandas,
jsonve
plotly.
İçinde bulunduğumuz grup telgrafta barındırılıyor ve verilerin alınması kolaydı. Gösterildiği gibi, dosyaları dışa aktarmak için Telegram Desktop'ı kullanmanız gerekiyordu. Ya .html ya da .json olarak dışa aktarma seçeneğiniz var, ancak python'un okuması daha kolay olduğu için% 100 .json'u öneririm.
Verilerin temizlenmesi daha az eğlenceliydi. Dosyalar iç içe geçmiş bir json dosyasında geldi ve bu nedenle düzleştirilmesi (veya
normalizedpython'da) gerekiyordu. Biz de dosyaları içe aktardık ...
… Ve sonra onu normalleştirmeye başladı. Öyleyse, json_normalize nasıl çalışır, temelde ana düğüme bağlı olarak yuvalanmış bir json'u paketinden çıkarır. Bu durumda, pandaları yeni kullansaydık
read_json, böyle bir şeye benzeyecekti.
Gördüğünüz gibi, gerçek mesajlar ana düğüm "mesajlarında" saklanır ve bu nedenle onu paketinden çıkardık
norm_msg = json_normalize(d['messages'])ve ana düğüm "mesajlarına" işaret ettik .
Bu yapıldıktan sonra, önemli sütunları çıkarmam gerekiyordu. Çıktı aynı zamanda bir anket başlatma, konum gönderme, etiket gönderme vb. Gibi rastgele şeyler kaydettiği ve bunlar gerçek metin içermediği için yalnızca "mesaj" olarak etiketlenmiş mesaj türlerini aldım. Daha sonra, yalnızca bana tarih, metin ve metnin kimden geldiğinin önemli bileşenlerini vermek için onu filtreledim. Daha sonra anlaşılmasını kolaylaştırmak için yeniden etiketledim.
Ayrıca bazı mesajların rastgele karakterler içerdiğini fark ettim ve uygun kelimelerin oluşması için bunlardan kurtulmam gerekiyordu.
Sonunda, işimiz bitti ve eğlenceli şeyler yapmaya hazırdık! Sözcüklerin sayısını saymak için önce metin sütunundaki tüm sözcükleri küçük büyük harfle değiştirip onları bölmeden önce birleştirdim. Sonra
value_countssohbette kullanılan ilk 100 kelimeyi kullandım ve çıkardım
Daha sonra
plotly.expressbasit bir çubuk grafik kullanarak grafiğini çizdim. Açıkçası "the" kelimesi son derece popülerdi
En çok mesajı kimin gönderdiğini görmek
value_countsiçin 'kimden' sütununu kullandım ve onu da çizdim.
Bu ilginçti. Etkileşimleri ölçmek ve kimin kimden sonra en çok yanıt verdiğini görmek istedim. Bu nedenle, bir liste oluşturmak için basit bir döngü oluşturdum, hangi kişinin yanıt verme eğiliminde olduğunu diğer kişinin ardından kaydetti. Görünüşe göre, sanırım A kişisi kendinden sonra cevap verirken çok eğlendi.
Son olarak, kelimenin kaç kez kullanıldığını görmeme izin veren özel kelimelerin bir listesini istedim. Bu kelimelerin bir listesini oluşturdum ve ardından
pd.Seriesmetin verilerimizde kaç kez göründüklerini saydım .
Sanırım hepimiz birbirimizi çok seviyoruz ve çok eğleniyoruz.
İşte orada var! Grup sohbetinde sözcüklerin ve ifadelerin eğlenceli küçük bir keşfi. Okuduğunuz için teşekkürler ve ilginç bulduğunuzu umuyoruz!
İlk olarak zachlim98.github.io/me adresinde yayınlandı
JSON (JavaScript Object Notation), web siteleri ve sunucular arasındaki iletişim için kullanılan hafif bir veri değişim biçimidir. JavaScript programlama dilinin bir alt kümesine dayanır ve genellikle web uygulamalarında veri iletmek için kullanılır.
Yazılım mühendisliğinin büyüleyici bir yönü, bir metin dosyasındaki bir dizi karakterin, anlamlı sonuçlar üretmek için bir CPU üzerinde yürütülebilen bir dizi talimata dönüştürülmesidir. Kodu okuyan bir kişi için istenen sonucun ne olduğu oldukça açıktır (dile bağlı olarak belki de o kadar açık olmayabilir).
MIT Seçim Laboratuvarı'nda yüksek lisans araştırmacısı ve doktora derecesi olan Jesse Clark tarafından yazılmıştır.
Oakland, CA'da halka açık verileri kullanarak hava kalitesini tahmin etmek Google ve EDF, Oakland'daki hava kirliliğini haritalama çalışmalarını yayınladığında, bu çalışmanın sonuçları büyük ilgi gördü. Yayınladıkları veriler, hava kalitesinin Doğu ve Batı Oakland'daki şehir bloklarına göre nasıl değiştiğini gösteren ilk veri kümelerinden biriydi.
Daniel Fleck ve David Lubert ile yazılmıştır Dizimizin ilk blogu, bir veri bilimi projesini uygun şekilde değerlendirmek için Net Şimdiki Değer (NPV), İç Getiri Oranı (IRR) ve Karlılık Endeksi'ni (PI) kullanmaya odaklanacaktır. Ayrıca, bir veri bilimi metodolojisinin kullanılmasının, bu aynı ekonomik ölçütlerin girdilerini daha yüksek kaliteli değerlendirmeler geliştirmek için nasıl daha da iyileştirebileceğini tartışacağız.
Öz bileşimi ve SVD için yararlı olan doğrusal cebir temel kavramını anlayın Bu makalede, öz ayrıştırma veya tekil değer ayrıştırma (SVD) gibi matris çarpanlara ayırma yöntemlerini anlamanın ilginç bir yolu olan temel kavramını öğreneceksiniz. Tanımlar Temel, vektör uzaylarını (vektör setleri) tanımlamak için kullanılan bir koordinat sistemidir.