Bagaimana Anda memindahkan satu kolom dengan python?

Kami akan menghasilkan beberapa data menggunakan modul acak NumPy dan menyimpannya dalam kerangka data Pandas. Berbeda dengan sebelumnya, disini kita membuat dataframe Pandas menggunakan array NumPy dua dimensi berukuran 8×3 dan menentukan nama kolom untuk dataframe tersebut dengan argumen “columns”

np.random.seed(42)
df =pd.DataFrame(np.random.randint(20, size=(8,3)),
                   columns=list('BCA'))

Mari kita lihat 5 baris teratas dari kerangka data dengan fungsi Pandas head()

df.head()
	B	C	A
0	6	19	14
1	10	7	6
2	18	10	10
3	3	7	2
4	1	11	5
_

Kita dapat melihat bahwa kolom dalam kerangka data tidak beraturan dan kami ingin memindahkan kolom ketiga A ke posisi pertama kerangka data

Untuk memindahkan kolom ke kolom pertama dalam bingkai data Pandas, pertama-tama kita menggunakan fungsi Pandas pop() dan menghapus kolom dari bingkai data

Di sini kami menghapus kolom "A" dari kerangka data dan menyimpannya dalam sebuah variabel

col_name="A"
first_col = df.pop(col_name)
first_col
0    14
1     6
2    10
3     2
4     5
5    11
6     9
7    14
Name: A, dtype: int64

Sekarang kerangka data asli tidak mengandung variabel yang ingin kita pindahkan ke kolom pertama

df.head()
	B	C
0	6	19
1	10	7
2	18	10
3	3	7
4	1	11
_

Sekarang kita bisa menggunakan fungsi Pandas insert() dan memasukkan kolom opped ke posisi pertama dari kerangka data. Argumen pertama dari fungsi insert() adalah lokasi yang ingin kita sisipkan, ini dia 0

Gunakan pop() untuk memunculkan kolom dan menyisipkannya menggunakan metode insert(). e. memindahkan kolom. Pertama, buat DataFrame dengan 3 kolom −

dataFrame = pd.DataFrame(
   {
      "Student": ['Jack', 'Robin', 'Ted', 'Marc', 'Scarlett', 'Kat', 'John'],"Result": ['Pass', 'Fail', 'Pass', 'Fail', 'Pass', 'Pass', 'Pass'],"Roll Number": [ 5, 10, 3, 8, 2, 9, 6]
   }
)

Pindahkan kolom "Roll Number" ke posisi 1 dengan terlebih dahulu memunculkan kolom −

shiftPos = dataFrame.pop("Roll Number")
_

Masukkan kolom pada posisi 1 -

dataFrame.insert(0, "Roll Number", shiftPos)

Contoh

Berikut ini adalah kode -

import pandas as pd

# Create DataFrame
dataFrame = pd.DataFrame(
   {
      "Student": ['Jack', 'Robin', 'Ted', 'Marc', 'Scarlett', 'Kat', 'John'],"Result": ['Pass', 'Fail', 'Pass', 'Fail', 'Pass', 'Pass', 'Pass'],"Roll Number": [ 5, 10, 3, 8, 2, 9, 6]
   }
)

print"DataFrame ...\n",dataFrame

# move column "Roll Number" to 1st position
shiftPos = dataFrame.pop("Roll Number")

# insert column on the 1st position
dataFrame.insert(0, "Roll Number", shiftPos)

print"\nUpdated DataFrame after moving a column to the first position...\n",dataFrame
_

Keluaran

Ini akan menghasilkan output berikut -

DataFrame ...
   Result   Roll Number   Student
0    Pass             5      Jack
1    Fail            10     Robin
2    Pass             3       Ted
3    Fail             8      Marc
4    Pass             2  Scarlett
5    Pass             9       Kat
6    Pass             6      John

Updated DataFrame after moving a column to the first position...
   Roll Number   Result   Student
0            5     Pass      Jack
1           10     Fail     Robin
2            3     Pass       Ted
3            8     Fail      Marc
4            2     Pass  Scarlett
5            9     Pass       Kat
6            6     Pass      John
_

Kita dapat menggunakan metode shift() di Pandas untuk menggeser kolom DataFrame tanpa harus menulis ulang seluruh DataFrame. shift() mengambil parameter berikut

shift(self, periods=1, freq=None, axis=0, fill_value=None)
  • periode  Jumlah periode yang akan diubah. Itu bisa mengambil angka negatif juga
  • sumbu  Dibutuhkan nilai Boolean;
  • fill_value  Ini akan menggantikan nilai yang hilang

Mari kita ambil contoh dan lihat cara menggunakan metode shift() ini

Langkah

  • Buat data tabular dua dimensi, ukuran dapat berubah, berpotensi heterogen, df
  • Cetak input DataFrame, df
  • Pilih kolom dan geser dengan menggunakan df["column_name]=df. nama kolom. menggeser()
  • Cetak DataFrame yang diperbarui

Contoh

import pandas as pd

df = pd.DataFrame(
   dict(
      name=['John', 'Jacob', 'Tom', 'Tim', 'Ally'],
      marks=[89, 23, 100, 56, 90],
      subjects=["Math", "Physics", "Chemistry", "Biology", "English"]
   )
)

print "Input DataFrame is:\n", df

df["name"] = df.name.shift(1)
print "After shifting column name by 1:\n", df

df["marks"] = df.marks.shift(2)
print "After shifting column marks by 2:\n", df

df["subjects"] = df.subjects.shift(-1)
print "After shifting column subjects by -1:\n", df

Keluaran

Input DataFrame is:
     name   marks   subjects
0    John    89         Math
1   Jacob    23      Physics
2     Tom   100    Chemistry
3     Tim    56      Biology
4    Ally    90      English

After shifting column name by 1:
     name   marks   subjects
0     NaN    89         Math
1    John    23      Physics
2   Jacob   100    Chemistry
3     Tom    56      Biology
4     Tim    90      English

After shifting column marks by 2:
     name   marks   subjects
0     NaN    100       Math
1    John    100    Physics
2   Jacob     89  Chemistry
3     Tom     23    Biology
4     Tim    100    English

After shifting column subjects by -1:
     name   marks   subjects
0     NaN   100      Physics
1    John   100    Chemistry
2   Jacob    89      Biology
3     Tom    23      English
4     Tim   100          NaN

Bagaimana Anda memindahkan satu kolom dengan python?


Bagaimana Anda memindahkan satu kolom dengan python?

Bagaimana cara memindahkan posisi kolom dengan Python?

Anda perlu membuat daftar kolom baru dalam urutan yang diinginkan, lalu gunakan df = df[cols] untuk mengatur ulang kolom .

Bagaimana cara memindahkan kolom tertentu di panda?

Buat data tabular dua dimensi, ukuran dapat berubah, berpotensi heterogen, df
Cetak input DataFrame, df
Pilih kolom dan geser dengan menggunakan df["column_name]=df. nama kolom. menggeser()
Cetak DataFrame yang diperbarui

Bagaimana Anda memilih satu kolom dengan Python?

Memilih kolom berdasarkan namanya . Mengembalikan seri panda. Melewati daftar dalam tanda kurung memungkinkan Anda memilih beberapa kolom sekaligus. put the string name of the column in brackets. Returns a pandas series. Passing a list in the brackets lets you select multiple columns at the same time.

Bagaimana Anda mengubah kolom dengan Python?

Metode #1. Mengubah nama kolom dan indeks baris menggunakan df. kolom dan df. .
Metode #2. Menggunakan fungsi rename() dengan kamus untuk mengubah satu kolom. # mari kita ubah nama kolom pertama. .
Metode #3. Menggunakan Fungsi Lambda untuk mengganti nama kolom. .
Metode #4. Menggunakan atribut nilai untuk mengganti nama kolom