Một cách để đạt được điều này là
>>> pd.DataFrame[np.array[[[2, 3, 4]]], columns=['A', 'B', 'C']].append[df, ignore_index=True]
Out[330]:
A B C
0 2 3 4
1 5 6 7
2 7 8 9
Nói chung, nó dễ nhất để nối các khung dữ liệu, không phải sê -ri. Trong trường hợp của bạn, vì bạn muốn hàng mới là "trên đầu" [với ID bắt đầu] và không có chức năng
>>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
1, trước tiên tôi tạo DataFrame mới và sau đó nối thêm bản cũ của bạn.>>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
2 sẽ bỏ qua chỉ mục cũ đang diễn ra trong DataFrame của bạn và đảm bảo rằng hàng đầu tiên thực sự bắt đầu với Index >>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
3 thay vì khởi động lại với Index >>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
4.Tuyên bố miễn trừ trách nhiệm điển hình: Cetero Censeo ... Hàng nối là một hoạt động khá kém hiệu quả. Nếu bạn quan tâm đến hiệu suất và bằng cách nào đó có thể đảm bảo trước tiên để tạo DataFrame với chỉ mục đúng [dài hơn] và sau đó chỉ cần chèn hàng bổ sung vào DataFrame, bạn chắc chắn nên làm điều đó. Nhìn thấy:inserting the additional row into the dataframe, you should definitely do that. See:
>>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
Cho đến nay, chúng tôi có những gì bạn có là
>>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
5:>>> df2
Out[339]:
A B C
0 NaN NaN NaN
1 5 6 7
2 7 8 9
Nhưng bây giờ bạn có thể dễ dàng chèn hàng như sau. Vì không gian được phân bổ, điều này hiệu quả hơn.
>>> df2.loc[0] = np.array[[2, 3, 4]]
>>> df2
Out[341]:
A B C
0 2 3 4
1 5 6 7
2 7 8 9
Trong hướng dẫn này, bạn sẽ học cách thêm [hoặc chèn] một hàng vào khung dữ liệu gấu trúc. Bạn sẽ học cách thêm một hàng, nhiều hàng và tại các vị trí cụ thể. Bạn cũng sẽ học cách thêm một hàng bằng danh sách, một loạt và từ điển.you’ll learn how to add [or insert] a row into a Pandas DataFrame. You’ll learn how to add a single row, multiple rows, and at specific positions. You’ll also learn how to add a row using a list, a Series, and a dictionary.
Đến cuối hướng dẫn này, bạn sẽ học được:
- Các cách khác nhau để thêm một hàng và nhiều hàng vào một khung dữ liệu gấu trúc
- Cách chèn một hàng tại các vị trí cụ thể, chẳng hạn như trên cùng hoặc dưới cùng của một khung gấu dữ liệu gấu trúc
- Cách thêm hàng bằng danh sách, loạt gấu trúc và từ điển
Đang tải một mẫu dữ liệu gấu trúc mẫu
Để theo dõi cùng với từng dòng hướng dẫn này, bạn có thể sao chép mã bên dưới vào trình chỉnh sửa mã yêu thích của bạn. Nếu bạn có dữ liệu của riêng mình để theo dõi, hãy thoải mái làm như vậy [tất nhiên, kết quả của bạn sẽ thay đổi]:
# Loading a Sample Pandas DataFrame
import pandas as pd
df = pd.DataFrame.from_dict[{
'Name': ['Nik', 'Kate', 'Evan', 'Kyra'],
'Age': [31, 30, 40, 33],
'Location': ['Toronto', 'London', 'Kingston', 'Hamilton']
}]
print[df]
# Returns:
# Name Age Location
# 0 Nik 31 Toronto
# 1 Kate 30 London
# 2 Evan 40 Kingston
# 3 Kyra 33 Hamilton
Chúng tôi có bốn hồ sơ và ba cột khác nhau, bao gồm một người tên, tuổi và vị trí.
Cách dễ nhất để thêm hoặc chèn một hàng mới vào khung dữ liệu gấu trúc là sử dụng phương thức Pandas
>>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
6. Phương pháp >>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
6 là phương pháp trợ giúp, cho hàm gấu trúc >>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
8. Để tìm hiểu thêm về cách các chức năng này hoạt động, hãy xem bài viết chuyên sâu của tôi ở đây. Trong phần này, bạn sẽ học ba cách khác nhau để thêm một hàng duy nhất vào khung dữ liệu gấu trúc.Thêm một hàng vào một khung dữ liệu gấu trúc bằng cách sử dụng từ điển
Hãy nói rằng chúng tôi muốn thêm một hàng mới chứa các dữ liệu sau:
>>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
9.Chúng tôi có thể viết đơn giản:
df = df.append[{'Name':'Jane', 'Age':25, 'Location':'Madrid'}, ignore_index=True]
print[df]
# Returns:
# Name Age Location
# 0 Nik 31 Toronto
# 1 Kate 30 London
# 2 Evan 40 Kingston
# 3 Kyra 33 Hamilton
# 4 Jane 25 Madrid
Trong ví dụ trên, chúng tôi có thể thêm một hàng mới vào DataFrame bằng từ điển. Bởi vì chúng tôi đã vượt qua trong một từ điển, chúng tôi cần phải vượt qua trong cuộc tranh luận
>>> df2
Out[339]:
A B C
0 NaN NaN NaN
1 5 6 7
2 7 8 9
0.Thêm một hàng vào gấu trúc DataFrame bằng danh sách
Để thêm danh sách vào gấu trúc DataFrame hoạt động khác một chút vì chúng ta có thể chỉ cần sử dụng chức năng
>>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
6. Để làm điều này, chúng tôi cần sử dụng >>> df2
Out[339]:
A B C
0 NaN NaN NaN
1 5 6 7
2 7 8 9
2 accessor. Nhãn mà chúng tôi sử dụng cho người truy cập >>> df2
Out[339]:
A B C
0 NaN NaN NaN
1 5 6 7
2 7 8 9
2 của chúng tôi sẽ là độ dài của DataFrame. Điều này sẽ tạo ra một hàng mới như hình dưới đây:df.loc[len[df]] = ['Jane', 25, 'Madrid']
print[df]
# Returns:
# Name Age Location
# 0 Nik 31 Toronto
# 1 Kate 30 London
# 2 Evan 40 Kingston
# 3 Kyra 33 Hamilton
# 4 Jane 25 Madrid
Như một niềm vui sang một bên: Sử dụng
>>> df2
Out[339]:
A B C
0 NaN NaN NaN
1 5 6 7
2 7 8 9
4 khó khăn hơn vì nó yêu cầu vị trí chỉ mục đã tồn tại - có nghĩa là chúng ta sẽ cần thêm một hàng trống trước hoặc ghi đè dữ liệu.Thêm một hàng vào gấu trúc DataFrame bằng một loạt
Bây giờ, hãy để cố gắng thêm cùng một hàng như được hiển thị ở trên bằng cách sử dụng loạt gấu trúc, mà chúng ta có thể tạo bằng danh sách Python. Chúng tôi chỉ cần chuyển một danh sách vào chức năng
>>> df2
Out[339]:
A B C
0 NaN NaN NaN
1 5 6 7
2 7 8 9
5 để chuyển đổi danh sách thành một chuỗi. Hãy để xem cách thức hoạt động của nó:# Add a Row as a Series
df = df.append[pd.Series[['Jane', 25, 'Madrid']], ignore_index=True]
print[df]
# Returns:
# Name Age Location
# 0 Nik 31 Toronto
# 1 Kate 30 London
# 2 Evan 40 Kingston
# 3 Kyra 33 Hamilton
# 4 Jane 25 Madrid
Chèn một hàng vào một khung gấu dữ liệu ở phía trên
Thêm một hàng vào đỉnh của một gấu trúc DataFrame khá đơn giản: chúng tôi chỉ cần đảo ngược các tùy chọn bạn đã học ở trên. Bằng cách này, tôi có nghĩa là nói rằng chúng tôi nối các dữ liệu lớn hơn vào hàng mới.
Tuy nhiên, trước tiên chúng ta phải tạo một DataFrame. Chúng ta có thể làm điều này bằng cách sử dụng lớp
>>> df2
Out[339]:
A B C
0 NaN NaN NaN
1 5 6 7
2 7 8 9
6. Hãy để một cái nhìn:df = pd.DataFrame[[['Jane', 25, 'Madrid']], columns=df.columns].append[df]
print[df]
# Returns:
# Name Age Location
# 0 Jane 25 Madrid
# 0 Nik 31 Toronto
# 1 Kate 30 London
# 2 Evan 40 Kingston
# 3 Kyra 33 Hamilton
Chèn một hàng vào một gấu dữ liệu pandas tại một chỉ mục cụ thể
Thêm một hàng tại một chỉ mục cụ thể là một chút khác nhau. Như được hiển thị trong ví dụ về việc sử dụng danh sách, chúng ta cần sử dụng trình truy cập
>>> df2
Out[339]:
A B C
0 NaN NaN NaN
1 5 6 7
2 7 8 9
2. Tuy nhiên, chèn một hàng tại một chỉ mục nhất định sẽ chỉ ghi đè lên điều này. Thay vào đó, những gì chúng ta có thể làm là vượt qua một giá trị gần với nơi chúng ta muốn chèn hàng mới.Ví dụ: nếu chúng tôi có các chỉ số hiện tại từ 0-3 và chúng tôi muốn chèn một hàng mới tại Index 2, chúng tôi chỉ có thể chỉ định nó bằng INDEX 1.5. Hãy để xem cách thức hoạt động của nó:
# Inserting a Row at a Specific Index
df.loc[1.5] = ['Jane', 25, 'Madrid']
df = df.sort_index[].reset_index[drop=True]
print[df]
# Returns:
# Name Age Location
# 0 Nik 31 Toronto
# 1 Kate 30 London
# 2 Jane 25 Madrid
# 3 Evan 40 Kingston
# 4 Kyra 33 Hamilton
Điều này, tất nhiên, đưa ra một vài giả định:
- Chỉ mục của bạn bắt đầu từ 0. Điều chỉnh chỉ mục
2 của bạn cho phù hợp, nếu không.>>> df2 Out[339]: A B C 0 NaN NaN NaN 1 5 6 7 2 7 8 9
- Rằng chỉ số của bạn có thể bị đột biến theo cách này. Nếu chỉ mục của bạn có ý nghĩa hơn, điều này có thể không phải là trường hợp.
Chèn nhiều hàng vào khung dữ liệu gấu trúc
Thêm nhiều hàng vào một gấu trúc DataFrame là cùng một quy trình như thêm một hàng. Tuy nhiên, nó thực sự có thể nhanh hơn nhiều, vì chúng ta có thể chỉ cần vượt qua tất cả các mục cùng một lúc. Ví dụ: nếu chúng ta thêm các mục bằng từ điển, thì chúng ta chỉ có thể thêm chúng làm danh sách từ điển.
Hãy cùng xem một ví dụ:
>>> index = np.array[[0, 1, 2]]
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[0:1] = [list[s1], list[s2]]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame[columns=['A', 'B', 'C'], index=index]
>>> df2.loc[1:] = [list[s1], list[s2]]
0Sự kết luận
Trong hướng dẫn này, bạn đã học cách thêm và chèn các hàng vào khung dữ liệu gấu trúc. Bạn đã học được một số phương pháp khác nhau để làm điều này, bao gồm sử dụng từ điển, danh sách và loạt gấu trúc. Bạn cũng đã học cách chèn các hàng mới ở trên cùng, dưới cùng và tại một chỉ mục cụ thể. Cuối cùng, bạn cũng đã học được cách thêm nhiều hàng vào khung dữ liệu gấu trúc cùng một lúc.
Tài nguyên bổ sung
Để tìm hiểu thêm về các chủ đề liên quan, hãy xem các hướng dẫn dưới đây:
- Tạo dữ liệu dữ liệu pandas trống và dữ liệu nối
- Pandas: Nhận số hàng từ DataFrame
- Pandas: Cách thả cột Chỉ mục DataFrame
- Cách xáo trộn các hàng dữ liệu pandas trong Python