Tôi có một tệp excel, tôi đang cố đọc hàng đầu tiên chuyển nó sang chức năng khác và xóa hàng đầu tiên khỏi excel và lưu nó, cho đến khi tất cả các hàng trong tệp excel được sử dụng hết. Show Tôi đã thử sử dụng openpyxl, tôi đã có thể xóa hàng đầu tiên trong lần thử đầu tiên nhưng khi tôi thử đọc lại tệp excel, nó sẽ cho tôi ngoại lệ này
Đây là mã của tôi
Petezurich 8.4758 Huy hiệu vàng38 Huy hiệu bạc55 Huy hiệu Đồng8 gold badges38 silver badges55 bronze badges Hỏi ngày 14 tháng 4 năm 2019 lúc 14:46Apr 14, 2019 at 14:46
2 Chưa được kiểm tra nhưng điều chỉnh sau đây nên sửa nó. Thay vì đọc 2 and removing row 3 you look for the first non empty row using 4 and read and remove that.
Đã trả lời ngày 14 tháng 4 năm 2019 lúc 15:12Apr 14, 2019 at 15:12
CapslockcapslockCAPSLOCK 5.0373 Huy hiệu vàng29 Huy hiệu bạc52 Huy hiệu Đồng3 gold badges29 silver badges52 bronze badges 4 Khi các hàng bị xóa với 5, chỉ mục của chúng cũng bị xóa, điều đó có nghĩa là không tồn tại hàng với chỉ mục 3 nữa.
Mike 6666 Huy hiệu bạc15 Huy hiệu Đồng6 silver badges15 bronze badges Đã trả lời ngày 14 tháng 4 năm 2019 lúc 14:55Apr 14, 2019 at 14:55
Ahmed Ragabahmed RagabAhmed Ragab 8165 Huy hiệu bạc10 Huy hiệu đồng5 silver badges10 bronze badges Trong bài viết này, chúng tôi sẽ thảo luận về các cách khác nhau để xóa hàng đầu tiên của Pandas DataFrame trong Python. Mục lục
Trong Pandas, DataFrame cung cấp một ILOC thuộc tính, để chọn một phần của DataFrame bằng cách sử dụng lập chỉ mục dựa trên vị trí. Phần được chọn này có thể là một vài cột hoặc hàng. Chúng ta có thể sử dụng thuộc tính này để chọn tất cả các hàng ngoại trừ hàng đầu tiên và sau đó gán lại các hàng đã chọn cho biến ban đầu. Nó sẽ cho một hiệu ứng mà chúng tôi đã xóa hàng đầu tiên khỏi DataFrame. Ví dụ,iloc, to select a portion of the dataframe using position based indexing. This selected portion can be few columns or rows . We can use this attribute to select all the rows except the first one and then assign back the selected rows to the original variable. It will give an effect that we have deleted the first row from the dataframe. For example, # Drop first row # by selecting all rows from first row onwards df = df.iloc[1: , :] Chúng tôi đã chọn một phần của DataFrame, bao gồm tất cả các cột, nhưng nó chỉ chọn các hàng N-1, tức là từ hàng đầu tiên trở đi. Sau đó gán điều này trở lại cùng một biến. Vì vậy, về cơ bản, nó đã loại bỏ hàng đầu tiên của DataFrame. Nó hoạt động như thế nào? Quảng cáo Cú pháp của dataFrame.iloc [] giống như, df.iloc[row_start:row_end , col_start, col_end] Arguments:
Nó trả về một phần của DataFrame bao gồm các hàng từ ROW_START đến ROW_END-1 và các cột từ col_start đến col_end-1.row_start to row_end-1 and columns from col_start to col_end-1. Để xóa hàng đầu tiên khỏi DataFrame, chỉ cần chọn các hàng từ hàng số 2 đến cuối và chọn tất cả các cột. Khi lập chỉ mục bắt đầu từ 0, vì vậy để chọn tất cả các hàng sau khi sử dụng đầu tiên -> (1 :) tức là từ hàng thứ 2 đến cuối. Để chọn tất cả các cột, sử dụng các giá trị mặc định, tức là (:) tức là. df = df.iloc[1: , :] Kiểm tra hoàn thành ví dụ để xóa hàng đầu tiên của DataFrame, import pandas as pd # List of Tuples empoyees = [('Jack', 34, 'Sydney', 5) , ('Riti', 31, 'Delhi' , 7) , ('Aadi', 16, 'London', 11) , ('Mark', 41, 'Delhi' , 12)] # Create a DataFrame object df = pd.DataFrame( empoyees, columns=['Name', 'Age', 'City', 'Experience']) print("Contents of the Dataframe : ") print(df) # Drop first row # by selecting all rows from first row onwards df = df.iloc[1: , :] print("Modified Dataframe : ") print(df) Output: Contents of the Dataframe : Name Age City Experience 0 Jack 34 Sydney 5 1 Riti 31 Delhi 7 2 Aadi 16 London 11 3 Mark 41 Delhi 12 Modified Dataframe : Name Age City Experience 1 Riti 31 Delhi 7 2 Aadi 16 London 11 3 Mark 41 Delhi 12 Sử dụng Drop () để xóa hàng đầu tiên của Pandas DataFrameTrong Pandas, hàm DataFrame Drop () Drop () chấp nhận một chuỗi các tên hàng mà nó cần để xóa khỏi DataFrame. Để đảm bảo rằng nó chỉ loại bỏ các hàng, hãy sử dụng Authet Axis = 0 và để thực hiện các thay đổi tại chỗ, trong cuộc gọi đối tượng DataFrame, hãy truyền đối số tại chỗ = true.drop() function accepts a sequence of row names that it needs to delete from the dataframe. To make sure that it removes the rows only, use argument axis=0 and to make changes in place i.e. in calling dataframe object, pass argument inplace=True. Kiểm tra hoàn thành ví dụ để xóa hàng đầu tiên của DataFrame như sau, import pandas as pd # List of Tuples empoyees = [('Jack', 34, 'Sydney', 5) , ('Riti', 31, 'Delhi' , 7) , ('Aadi', 16, 'London', 11) , ('Mark', 41, 'Delhi' , 12)] # Create a DataFrame object df = pd.DataFrame( empoyees, columns=['Name', 'Age', 'City', 'Experience']) print("Contents of the Dataframe : ") print(df) # Drop first row df.drop(index=df.index[0], axis=0, inplace=True) print("Modified Dataframe : ") print(df) Output: Contents of the Dataframe : Name Age City Experience 0 Jack 34 Sydney 5 1 Riti 31 Delhi 7 2 Aadi 16 London 11 3 Mark 41 Delhi 12 Modified Dataframe : Name Age City Experience 1 Riti 31 Delhi 7 2 Aadi 16 London 11 3 Mark 41 Delhi 12 Chúng tôi đã tìm nạp tất cả các tên của Chỉ mục DataFrame dưới dạng chuỗi và chuyển tên hàng/chỉ mục đầu tiên làm đối số chỉ mục trong hàm thả (), do đó nó đã xóa hàng đầu tiên của DataFrame. Sử dụng hàm đuôi () để thả hàng đầu tiên của pandas dataframeTrong Python, DataFrame cung cấp một đuôi chức năng (N), nó trả về n hàng cuối cùng của DataFrame. Vì vậy, để xóa hàng đầu tiên của DataFrame, chỉ cần chọn các hàng cuối cùng (N-1) của dataFrame bằng hàm đuôi (), trong đó n là tổng số hàng của DataFrame. Sau đó gán các hàng được chọn này trở lại cùng một biến. Nó sẽ cho một hiệu ứng mà chúng tôi đã xóa hàng đầu tiên của DataFrame. Ví dụ, Kiểm tra hoàn thành ví dụ để xóa hàng đầu tiên của DataFrame như sau, 0Output: 1Chúng tôi đã tìm nạp tổng số hàng trong DataFrame bằng DF.Shape [0] và sau đó được chuyển (df.Shape [0] -1) cho hàm đuôi () làm đối số. Do đó, nó đã chọn tất cả các hàng ngoại trừ hàng đầu tiên của DataFrame. Sau đó, chúng tôi đã chỉ định lại tất cả các hàng đã chọn của DF. Vì vậy, đây là cách nó xóa hàng đầu tiên của DataFrame tại chỗ.df.shape[0] and then passed (df.shape[0] -1) to the tail() function as argument. Therefore it selected the all rows except the first row of dataframe. Then we assigned back all the selected rows of df. So, this is how it deleted the first row of dataframe in place. Summary: Chúng tôi đã tìm hiểu về các cách khác nhau để xóa hàng đầu tiên của DataFrame. |