2016-04-05 32 views
4

Numaralı etiketli sütunlar veri çerçevesindeki iki sütun arasında bir veri çerçevesine bir sütun eklemek istiyorum. Aşağıdaki veri çerçevesinde, ilk sütun, dizinin ilk satırı sırasına göre indise karşılık gelir. Python: İki sütun arasındaki pandalar veri aralığına nasıl sütun eklenir?

df 
    0 0 1 2 3 4 5 
    1 6 7 4 5 2 1 
    2 0 3 1 3 3 4 
    3 9 8 4 3 6 2 

Öyle

df 
    0 0 1 2 3 4 5 6 
    1 6 7 4 5 2 2 1 
    2 0 3 1 3 3 3 4 
    3 9 8 4 3 6 5 2 
+1

çalışmaz hiçbir INPLACE parametresi vardır [ Yeni bir sütun ekleyin] (http://stackoverflow.com/questions/12555323/adding-new-column-to-existing-dataframe-in-python-pandas) ve sonra [sütunlarınızı sipariş edin] (http: // stackoverflow. com/sorular/13148429/how-to-değişim, seansları Sipariş-of-the dataframe-sütunları) ... –

cevap

4

Ayrıca insert kullanabilirsiniz:

df.insert(4, "new_col_name", tmp) 

Sonra @Alexander explained gibi sütun adlarını değiştirin.

Not df.insert()

Yani hiçbiri operasyon INPLACE yapmak ve dönecektir

yani df = df.insert(4, "new_col_name", tmp)Sadece gerekir

1

Önce dataframe için sütun bitiştirmek, ben sütunları 4 ve 5 arasına koymak istiyorum tmp=[2,3,5] var.

df2 = pd.concat([df, pd.DataFrame(tmp)], axis=1) 

Ardından, sütunları istenen sonuç için yeniden adlandırın.

df2.columns = [0, 1, 2, 3, 4, 6, 5] 

Şimdi yeniden adlandırılan sütunları sıralayın.

df2.sort_index(axis=1, inplace=True) 

>>> df2 
    0 1 2 3 4 5 6 
0 6 7 4 5 2 2 1 
1 0 3 1 3 3 3 4 
2 9 8 4 3 6 5 2 
İlgili konular