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

Làm cách nào để nối một danh sách vào một Pandas DataFrame bằng cách sử dụng loc trong Python?

Dataframe.loc được sử dụng để truy cập một nhóm hàng và cột theo nhãn hoặc một mảng boolean. Chúng tôi sẽ thêm một danh sách vào DataFrame bằng cách sử dụng loc. Đầ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 vào dạng danh sách bằng cách sử dụng loc () -

dataFrame.loc[len(dataFrame)] = 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 in the form of list using loc()
dataFrame.loc[len(dataFrame)] = myList

# display the update dataframe
print"\nUpdated DataFrame after appending a row using loc...\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 loc...
        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
6     Sri Lanka      7       30