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

Làm cách nào để chuyển một cột trong Pandas DataFrame?

Chúng ta có thể sử dụng phương thức shift () trong Pandas để chuyển các cột của DataFrame mà không cần phải viết lại toàn bộ DataFrame. shift () nhận các tham số sau

 shift (bản thân, thời gian =1, freq =Không, trục =0, fill_value =Không) 
  • khoảng thời gian Số kỳ cần thay đổi. Nó cũng có thể là một số âm.
  • trục Nó nhận một giá trị Boolean; 0 nếu bạn muốn thay đổi chỉ mục và 1 nếu bạn muốn chuyển cột
  • fill_value Nó sẽ thay thế giá trị bị thiếu.

Hãy lấy một ví dụ và xem cách sử dụng shift () này phương pháp.

Các bước

  • Tạo dữ liệu dạng bảng hai chiều, có thể thay đổi kích thước, có khả năng không đồng nhất, df.
  • In DataFrame đầu vào, df.
  • Chọn một cột và di chuyển nó bằng cách sử dụng df ["column_name] =df.column_name.shift ()
  • In DataFrame đã cập nhật.

Ví dụ

 nhập gấu trúc dưới dạng pddf =pd.DataFrame (dict (name =['John', 'Jacob', 'Tom', 'Tim', 'Ally'], mark =[89, 23, 100, 56, 90 ], Subject =["Toán", "Vật lý", "Hóa học", "Sinh học", "Tiếng Anh"])) print "Input DataFrame is:\ n", dfdf ["name"] =df.name.shift ( 1) print "Sau khi chuyển tên cột bằng 1:\ n", dfdf ["mark"] =df.marks.shift (2) print "Sau khi chuyển dấu cột thành 2:\ n", dfdf ["subject"] =df.subjects.shift (-1) in "Sau khi dịch chuyển các chủ đề cột bằng -1:\ n", df 

Đầu ra

 Dữ liệu đầu vàoFrame là:tên các môn học0 John 89 Math1 Jacob 23 Vật lý2 Tom 100 Hóa học3 Tim 56 Sinh học4 Ally 90 Tiếng AnhSau khi chuyển tên cột bằng 1:tên các môn học0 NaN 89 Toán học1 John 23 Vật lý2 Jacob 100 Hóa học3 Tom 56 Sinh học4 Tim 90 Tiếng AnhSau khi chuyển cột dấu bằng 2:tên các môn học0 NaN 100 Toán1 John 100 Vật lý2 Jacob 89 Hóa học3 Tom 23 Sinh học4 Tim 100 Tiếng AnhSau khi chuyển các môn học cột bằng -1:tên các môn học0 NaN 100 Vật lý1 John 100 Hóa học2 Jacob 89 Sinh học3 Tom 23 Tiếng Anh4 Tim 100 NaN