Pandas dataframe'e numpy dizisi nasıl eklenir
Bazen bir pandanın DataFrame’ine yeni bir sütun olarak bir NumPy dizisi eklemek isteyebilirsiniz.
Neyse ki, aşağıdaki sözdizimini kullanarak bunu kolayca yapabilirsiniz:
df[' new_column '] = array_name. tolist ()
Bu eğitimde bu sözdiziminin pratik kullanımına ilişkin bazı örnekler gösterilmektedir.
Örnek 1: DataFrame’de yeni bir sütun olarak bir NumPy dizisi ekleme
Aşağıdaki kod, bazı basketbol oyuncu istatistiklerini tutmak ve “bloklar” etiketli yeni bir sütun olarak bir NumPy dizisi eklemek için pandas DataFrame’in nasıl oluşturulacağını gösterir:
import numpy as np import pandas as pd #create pandas DataFrame df = pd.DataFrame({' points ': [25, 12, 15, 14, 19, 23, 25, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #create NumPy array for 'blocks' blocks = np. array ([2, 3, 1, 0, 2, 7, 8, 2]) #add 'blocks' array as new column in DataFrame df[' blocks '] = blocks. tolist () #display the DataFrame print(df) points assists rebounds blocks 0 25 5 11 2 1 12 7 8 3 2 15 7 10 1 3 14 9 6 0 4 19 12 6 2 5 23 9 5 7 6 25 9 9 8 7 29 4 12 2
Yeni DataFrame’in artık Blocks başlıklı ek bir sütuna sahip olduğunu unutmayın.
Örnek 2: NumPy Matrisini DataFrame’e Yeni Sütunlar Olarak Ekleme
Aşağıdaki kod, bazı basketbol oyuncu istatistiklerini tutmak ve “bloklar” etiketli yeni bir sütun olarak bir NumPy dizisi eklemek için pandas DataFrame’in nasıl oluşturulacağını gösterir:
import numpy as np import pandas as pd #create pandas DataFrame df = pd.DataFrame({' points ': [25, 12, 15, 14, 19, 23 #create NumPy matrix mat = np.matrix([[2, 3], [1, 0], [2, 7], [8, 2], [3, 4], [7, 7], [7, 5], [6, 3]]) #add NumPy matrix as new columns in DataFrame df_new = pd. concat ([df, pd.DataFrame(mat)], axis= 1 ) #display new DataFrame print(df_new) points assists rebounds 0 1 0 25 5 11 2 3 1 12 7 8 1 0 2 15 7 10 2 7 3 14 9 6 8 2 4 19 12 6 3 4 5 23 9 5 7 7 6 25 9 9 7 5 7 29 4 12 6 3
DataFrame’e eklediğimiz matrisin sütun adlarına varsayılan sütun adlarının 0 ve 1 olarak verildiğini unutmayın.
Bu sütunları df.columns işlevini kullanarak kolayca yeniden adlandırabiliriz:
#rename columns
df_new. columns = ['pts', 'ast', 'rebs', 'new1', 'new2']
#display DataFrame
print(df_new)
pts ast rebs new1 new2
0 25 5 11 2 3
1 12 7 8 1 0
2 15 7 10 2 7
3 14 9 6 8 2
4 19 12 6 3 4
5 23 9 5 7 7
6 25 9 9 7 5
7 29 4 12 6 3
Ek kaynaklar
Birden fazla Pandas DataFrame’i nasıl istifleyebilirim?
Dizinde iki Pandas DataFrame nasıl birleştirilir
Pandas DataFrame’i NumPy dizisine dönüştürme
Pandalar’da sütunlar nasıl yeniden adlandırılır?