Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để nối danh sách vào Pandas DataFrame bằng iloc trong Python?

Phương thức iloc là một lập chỉ mục dựa trên vị trí số nguyên để lựa chọn theo vị trí. Chúng tôi đang sử dụng iloc để thêm một danh sách vào DataFrame.

Đầu tiên chúng ta hãy tạo một DataFrame. Dữ liệu ở dạng danh sách xếp hạng đội cho ví dụ của chúng tôi -

# data in the form of list of team rankings
Team = [['India', 1, 100],['Australia', 2, 85],['England', 3, 75],['New Zealand', 4 , 65],['South Africa', 5, 50],['Bangladesh', 6, 40]]

# Creating a DataFrame and adding columns
dataFrame = pd.DataFrame(Team, columns=['Country', 'Rank', 'Points'])

Sau đây là hàng được thêm vào -

myList = ["Sri Lanka", 7, 30]

Nối hàng trên bằng iloc (). 5 có nghĩa là chỉ số 6 tức là hàng vị trí 6 sẽ được thay thế bằng hàng mới ở trên -

dataFrame.iloc[5] = myList

Ví dụ

Sau đây là mã -

import pandas as pd

# data in the form of list of team rankings
Team = [['India', 1, 100],['Australia', 2, 85],['England', 3, 75],['New Zealand', 4 , 65],['South Africa', 5, 50],['Bangladesh', 6, 40]]

# Creating a DataFrame and adding columns
dataFrame = pd.DataFrame(Team, columns=['Country', 'Rank', 'Points'])

print"DataFrame...\n",dataFrame

# row to be appended
myList = ["Sri Lanka", 7, 30]

# append the above row using iloc()
# 5 means index 6 i.e. position 6 row will get replaced with the above new row
dataFrame.iloc[5] = myList

# display the update dataframe
print"\nUpdated DataFrame after appending a row using iloc...\n",dataFrame

Đầu ra

Điều này sẽ tạo ra kết quả sau -

DataFrame...
       Country   Rank   Points
0        India      1      100
1    Australia      2       85
2      England      3       75
3  New Zealand      4       65
4 South Africa      5       50
5   Bangladesh      6       40

Updated DataFrame after appending a row using iloc...
       Country   Rank   Points
0        India      1      100
1    Australia      2       85
2      England      3       75
3  New Zealand      4       65
4 South Africa      5       50
5    Sri Lanka      7       30