Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Memformat Pandas DataFrame bagi Terapung dengan Rentetan Tersuai untuk Lajur?

Bagaimana untuk Memformat Pandas DataFrame bagi Terapung dengan Rentetan Tersuai untuk Lajur?

Susan Sarandon
Susan Sarandonasal
2024-11-17 04:36:03643semak imbas

How to Format Pandas DataFrame of Floats with a Custom String for Columns?

Bagaimana untuk Memaparkan Bingkai Data Pandas Terapung Menggunakan Rentetan Format untuk Lajur?

Pengenalan

Panda menyediakan cara yang mudah untuk memaparkan data jadual. Walau bagaimanapun, kadangkala anda mungkin perlu menyesuaikan format paparan untuk meningkatkan kebolehbacaan atau memenuhi keperluan pembentangan tertentu. Artikel ini membentangkan kaedah untuk memformat lajur yang mengandungi nombor titik terapung dalam format yang diingini menggunakan print() dan IPython display(), tanpa mengubah data asal.

Menggunakan pd.options.display.float_format

Untuk menggunakan format yang diingini secara seragam pada semua lajur titik terapung dalam DataFrame, gunakan pilihan pd.options.display.float_format. Contohnya, untuk memaparkan nilai berangka sebagai rentetan berformat mata wang dengan tanda dolar dan dua tempat perpuluhan, anda boleh menggunakan kod berikut:

import pandas as pd

pd.options.display.float_format = '${:,.2f}'.format
df = pd.DataFrame([123.4567, 234.5678, 345.6789, 456.7890],
                  index=['foo','bar','baz','quux'],
                  columns=['cost'])

print(df)

Kod ini akan menghasilkan output berikut:

        cost
foo  3.46
bar  4.57
baz  5.68
quux 6.79

Pemformatan Tersuai untuk Lajur Terpilih

Jika anda memerlukan format yang berbeza untuk lajur yang berbeza atau ingin mengekalkan jenis data tertentu, anda boleh mengubah suai DataFrame itu sendiri. Kod berikut menggantikan lajur yang ditentukan dengan perwakilan rentetannya dalam format tersuai:

import pandas as pd

df = pd.DataFrame([123.4567, 234.5678, 345.6789, 456.7890],
                  index=['foo','bar','baz','quux'],
                  columns=['cost'])

df['foo'] = df['cost']
df['cost'] = df['cost'].map('${:,.2f}'.format)

print(df)

Output yang terhasil akan menjadi DataFrame dengan lajur "foo" diformatkan sebagai mata wang dan lajur "kos" kekal sebagai dtype angka:

         cost       foo
foo   3.46  123.4567
bar   4.57  234.5678
baz   5.68  345.6789
quux  6.79  456.7890

Atas ialah kandungan terperinci Bagaimana untuk Memformat Pandas DataFrame bagi Terapung dengan Rentetan Tersuai untuk Lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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