2016-08-10 24 views
13

Tôi có dataframe đơn giản này:Làm thế nào để Thêm số cộng dồn đến một cột mới Sử dụng Pandas

ID Fruit 
F1 Apple 
F2 Orange 
F3 Banana 

tôi muốn thêm vào trong sự khởi đầu của dataframe một cột mới df['New_ID'] trong đó có số lượng 880 rằng increments bởi một trong mỗi hàng.

Sản lượng nên được chỉ đơn giản là thích:

New_ID ID Fruit 
880  F1 Apple 
881  F2 Orange 
882  F3 Banana 

tôi thử như sau:

df['New_ID'] = ["880"] # but I want to do this without assigning it the list of numbers literally 

Bất kỳ ý tưởng làm thế nào để giải quyết này?

Cảm ơn!

Trả lời

7

đây:

df = df.reset_index() 
df.columns[0] = 'New_ID' 
df['New_ID'] = df.index + 880 
+0

vĩ đại giải pháp, nhưng nó không chèn 'cột New_ID' vào đầu của dataframe. – MEhsan

+1

Ok, chỉnh sửa câu trả lời. – Kartik

+2

Hoặc làm những gì piRSquared nói, câu trả lời của ông là tốt hơn. Tôi nên nghĩ về điều đó, nhưng tôi đã thao túng các chỉ mục khi bạn hỏi câu hỏi của bạn, và tôi đoán tôi ngồi trong rãnh. – Kartik

26
df.insert(0, 'New_ID', range(880, 880 + len(df))) 
df 

enter image description here

8
df = df.assign(New_ID=[880 + i for i in xrange(len(df))])[['New_ID'] + df.columns.tolist()] 

>>> df 
    New_ID ID Fruit 
0  880 F1 Apple 
1  881 F2 Orange 
2  882 F3 Banana 
Các vấn đề liên quan