Veriyi parça parça yüklemek için bir yineleyici yazma (3)
Artık verileri parça parça okuyup işlemede iyice ustalaştın. Hadi bu becerini biraz daha ileri götürüp bir DataFrame'e sütun ekleyelim.
Önceki egzersizin kodundan yola çıkarak, daha önce oluşturduğun demet (tuple) listesinden yeni bir 'Total Urban Population' sütunu için değerler üretmek üzere bir liste üreteci kullanacaksın. Önceki egzersizden hatırlayacağın üzere, her demetin birinci ve ikinci elemanları sırasıyla 'Total Population' ve 'Urban population (% of total)' sütunlarındaki değerlerden oluşuyor. Buna göre, bu yeni 'Total Urban Population' sütunundaki değerler her demetin birinci ve ikinci elemanlarının çarpımıdır. Ayrıca, 2. eleman bir yüzde olduğundan, sonucu 100'e bölmen ya da alternatif olarak 0.01 ile çarpman gerekir.
Bu yeni sütundaki verileri kullanarak kentsel nüfus verisinin bir görselleştirmesini de çizeceksin.
pandas ve matplotlib.pyplot paketleri sırasıyla pd ve plt olarak içe aktarılmış ve kullanıma hazırdır.
Bu egzersiz
Python Araç Kutusu
kursunun bir parçasıdırEgzersiz talimatları
'Total Urban Population'adlı yeni sütun içinpops_list'ten değerler üreten bir liste üreteci yaz. Çıktı ifadesi,pops_listiçindeki her demetin birinci ve ikinci elemanlarının çarpımı olmalı. 2. eleman yüzde olduğundan, sonucu ya0.01ile çarpman ya da100'e bölmen gerekir. Ayrıca,'Total Urban Population'sütununun yalnızca tam sayı değerler alması gerektiğini unutma. Bunu sağlamak için çıktı ifadesiniint()ile tamsayıya dönüştürdüğünden emin ol.- x ekseninde
'Year'sütunundaki değerlerin, y ekseninde ise'Total Urban Population'sütunundaki değerlerin yer aldığı bir dağılım (scatter) grafiği oluştur.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Code from previous exercise
urb_pop_reader = pd.read_csv('ind_pop_data.csv', chunksize=1000)
df_urb_pop = next(urb_pop_reader)
df_pop_ceb = df_urb_pop[df_urb_pop['CountryCode'] == 'CEB']
pops = zip(df_pop_ceb['Total Population'],
df_pop_ceb['Urban population (% of total)'])
pops_list = list(pops)
# Use list comprehension to create new DataFrame column 'Total Urban Population'
df_pop_ceb['Total Urban Population'] = [____]
# Plot urban population data
df_pop_ceb.plot(kind=____, x=____, y=____)
plt.show()