Hướng dẫn how do you add a row in python? - làm thế nào để bạn thêm một hàng trong python?

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:

  1. Chỉ mục của bạn bắt đầu từ 0. Điều chỉnh chỉ mục
    >>> df2
    Out[339]: 
         A    B    C
    0  NaN  NaN  NaN
    1    5    6    7
    2    7    8    9
    
    2 của bạn cho phù hợp, nếu không.
  2. 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)]
0

Sự 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

Làm thế nào để bạn thêm một hàng mới trong Python?

Bạn có thể tạo DataFrame và nối một hàng mới vào DataFrame này từ Dict, trước tiên hãy tạo từ điển Python và sử dụng hàm append (), phương thức này được yêu cầu vượt qua bỏ qua_index = true để nối lại Dict như một hàng cho DataFrame, không sử dụng Điều này sẽ khiến bạn có một lỗi.create a Python Dictionary and use append() function, this method is required to pass ignore_index=True in order to append dict as a row to DataFrame, not using this will get you an error.

Làm cách nào để thêm một hàng trong gấu trúc?

Phương pháp Concat có thể được sử dụng để thêm các hàng vào khung dữ liệu gấu trúc.Phương pháp Concat lấy một loạt các đối tượng hoặc dataFrame và nối chúng vào một khung dữ liệu duy nhất. can be used to add rows to a Pandas Dataframe. The concat method takes an iterable of Series or Dataframe objects and concatenates them into a single Dataframe.

Có một chức năng hàng trong Python?

Chế độ hàng.Trong chế độ này, hàm quy trình (hàng) nhận hàng đầu vào dưới dạng dict và trả về từ điển Python.Tất cả các cột và giá trị của hàng đầu vào được thay thế bằng các khóa và giá trị của từ điển.Sửa đổi từ điển đầu vào tại chỗ và trả về nó được hỗ trợ.the process(row) function receives the input row as a dict and returns a Python dictionary. All columns and values of the input row are replaced by the keys and values of the dictionary. Modifying the input dictionary in place and returning it is supported.

Làm thế nào để bạn thêm các hàng và cột trong Python?

Thêm các hàng và cột mới vào Pandas DataFrame..
Thêm hàng vào DataFrame:.
DataFrame LOC để chèn một hàng ..
DataFrame ILOC để cập nhật hàng tại vị trí chỉ mục ..
Chèn hàng tại vị trí chỉ mục cụ thể ..
DataFrame nối vào để thêm hàng mới ..
Thêm cột mới vào DataFrame ..
Thêm nhiều cột vào DataFrame ..