Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Menambah Lajur Baharu dengan Cekap pada Pandas DataFrame?

Bagaimanakah Saya Boleh Menambah Lajur Baharu dengan Cekap pada Pandas DataFrame?

Mary-Kate Olsen
Lepaskan: 2024-12-17 06:41:25
asal
805 orang telah melayarinya

How Can I Efficiently Add a New Column to a Pandas DataFrame?

Menambah Lajur Baharu pada DataFrame Sedia Ada

Apabila bekerja dengan panda DataFrames, selalunya menjadi perlu untuk menambah lajur baharu pada bingkai data sedia ada. Terdapat pelbagai pendekatan untuk mencapai matlamat ini, masing-masing mempunyai kelebihan dan kelemahan tersendiri.

1. Menggunakan tugasan (Disyorkan untuk Pandas 0.17 dan ke atas):

import pandas as pd
import numpy as np

# Generate a sample DataFrame
df1 = pd.DataFrame({
    'a': [0.671399, 0.446172, 0.614758],
    'b': [0.101208, -0.243316, 0.075793],
    'c': [-0.181532, 0.051767, -0.451460],
    'd': [0.241273, 1.577318, -0.012493]
})

# Add a new column 'e' with random values
sLength = len(df1['a'])
df1 = df1.assign(e=pd.Series(np.random.randn(sLength)).values)
Salin selepas log masuk

2. Menggunakan loc[row_index, col_indexer] = nilai:

# Add a new column 'f' using loc
df1.loc[:, 'f'] = pd.Series(np.random.randn(sLength), index=df1.index)
Salin selepas log masuk

3. Menggunakan df[new_column_name] = pd.Series(values, index=df.index):

# Add a new column 'g' using the old method
df1['g'] = pd.Series(np.random.randn(sLength), index=df1.index)
Salin selepas log masuk

Ingat bahawa kaedah yang terakhir boleh mencetuskan SettingWithCopyWarning dalam versi panda yang lebih baharu. Menggunakan tetapan atau loc biasanya disyorkan untuk kecekapan dan kejelasan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menambah Lajur Baharu dengan Cekap pada Pandas DataFrame?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan