وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

نوشتن یک Pandas DataFrame در یک فایل CSV در پایتون

0 117
زمان لازم برای مطالعه: 4 دقیقه


معرفی

کار با داده ها بخش بزرگی از هر پروژه تجزیه و تحلیل داده است. در پایتون، کتابخانه پانداها ابزار قدرتمندی است که ساختارهای داده منعطف و کارآمدی را برای ایجاد process دستکاری و تجزیه و تحلیل داده ها آسان تر است. یکی از رایج ترین ساختارهای داده ارائه شده توسط پانداها DataFrame است که می توان آن را جدولی از داده ها با سطرها و ستون ها در نظر گرفت. با این حال، اغلب می خواهید DataFrame خود را برای استفاده بعدی در فایلی ذخیره کنید یا با دیگران به اشتراک بگذارید. یکی از رایج ترین فرمت های فایل برای ذخیره سازی داده ها CSV است.

در این مقاله، روش نوشتن a را بررسی خواهیم کرد pandas DataFrame به یک فایل CSV.

چرا یک DataFrame در یک فایل CSV بنویسیم؟

فایل‌های CSV به دلایل متعددی یک انتخاب محبوب برای ذخیره‌سازی داده‌ها هستند. اول از همه، آنها مبتنی بر متن هستند و بنابراین برای انسان قابل خواندن هستند. این بدان معنی است که می توانید یک فایل CSV را در یک ویرایشگر متن ساده باز کنید تا به سرعت داده های موجود در آن را مشاهده و درک کنید.

فایل های CSV نیز به طور گسترده ای مورد استفاده قرار می گیرند و توسط بسیاری از نرم افزارهای مختلف قابل درک هستند. این امر به اشتراک گذاری داده ها بین سیستم ها و زبان های برنامه نویسی مختلف را آسان می کند. اگر با تیمی کار می‌کنید که از ابزارهای مختلفی استفاده می‌کند، ذخیره DataFrame در یک فایل CSV تضمین می‌کند که همه می‌توانند با داده‌ها کار کنند.

در نهایت، نوشتن یک DataFrame در یک فایل CSV راهی برای حفظ داده های شما است. وقتی در یک جلسه پایتون کار می کنید، DataFrame شما فقط در حافظه وجود دارد. اگر جلسه پایتون خود را ببندید، DataFrame شما از بین می رود. با نوشتن آن در یک فایل CSV، می‌توانید داده‌های خود را در دیسک ذخیره کنید و به شما امکان می‌دهد بعداً دوباره به آن دسترسی داشته باشید، حتی پس از بسته شدن و بازگشایی جلسه پایتون.

import pandas as pd


df = pd.DataFrame({
    'A': (1, 2, 3),
    'B': ('a', 'b', 'c')
})


df.to_csv('my_data.csv')

در این کد یک DataFrame ایجاد می شود و سپس در یک فایل CSV به نام نوشته می شود my_data.csv. پس از اجرای این کد، یک فایل جدید در فهرست فعلی خود با این نام، حاوی داده های DataFrame خود خواهید یافت.

روش نوشتن یک DataFrame در یک فایل CSV

Pandas، یک کتابخانه محبوب دستکاری داده‌های پایتون، روشی ساده و در عین حال قدرتمند برای نوشتن یک DataFrame در یک فایل CSV ارائه می‌کند. کارکرد to_csv() چیزی است که ما نیاز داریم

بیایید با یک DataFrame پایه شروع کنیم:

import pandas as pd

data = {'Name': ('John', 'Anna', 'Peter'),
        'Age': (28, 24, 33),
        'Country': ('USA', 'Sweden', 'Germany')}
df = pd.DataFrame(data)

DataFrame ما به شکل زیر است:

   Name  Age    Country
0  John   28        USA
1  Anna   24     Sweden
2  Peter  33    Germany

برای نوشتن این DataFrame در یک فایل CSV، از to_csv() عملکرد مانند این است:

df.to_csv('data.csv')

این یک فایل CSV به نام ایجاد می کند data.csv در فهرست فعلی شما

اگر می خواهید مکان دیگری را مشخص کنید، مسیر کامل را ارائه کنید. مثلا، df.to_csv('/path/to/your/directory/data.csv').

نوشتن DataFrame در CSV با جداکننده خاص

به طور پیش فرض، to_csv() تابع از کاما به عنوان جداکننده فیلد استفاده می کند. با این حال، شما می توانید یک جدا کننده متفاوت با استفاده از sep پارامتر.

به عنوان مثال، اجازه دهید DataFrame خود را با استفاده از نقطه ویرگول به عنوان جداکننده در یک فایل CSV بنویسیم:

df.to_csv('data_semicolon.csv', sep=';')

این یک فایل CSV به نام ایجاد می کند data_semicolon.csv با داده های جدا شده با نقطه ویرگول.

Name;Age;Country
John;28;USA
Anna;24;Sweden
Peter;33;Germany

توجه داشته باشید: را sep پارامتر هر کاراکتری را به عنوان جداکننده می پذیرد. با این حال، جداکننده های رایج عبارتند از کاما، نقطه ویرگول، تب (\tو فاصله (‘ ‘).

این انعطاف پذیری پانداها به شما این امکان را می دهد که به راحتی DataFrame خود را در یک فایل CSV که با نیازهای شما مطابقت دارد بنویسید، خواه یک CSV استاندارد باشد یا یک CSV با یک جداکننده خاص.

نوشتن DataFrame در CSV بدون ایندکس

به‌طور پیش‌فرض، وقتی یک DataFrame را روی یک فایل CSV با استفاده از to_csv() تابع، pandas شامل شاخص DataFrame است. با این حال، ممکن است سناریوهایی وجود داشته باشد که شما این را نمی خواهید. در چنین مواردی، می توانید تنظیم کنید index پارامتر به False برای حذف فهرست از فایل CSV.

در اینجا یک مثال است:

import pandas as pd


df = pd.DataFrame({
   'A': ('foo', 'bar', 'baz'),
   'B': ('alpha', 'beta', 'gamma')
})

print(df)

df.to_csv('no_index.csv', index=False)

را print(df) دستور خروجی خواهد داد:

     A      B
0  foo  alpha
1  bar   beta
2  baz  gamma

اما no_index.csv فایل به شکل زیر خواهد بود:

A,B
foo,alpha
bar,beta
baz,gamma

همانطور که می بینید، فایل CSV شامل فهرست DataFrame نیست.

اگر فایل CSV را در یک ویرایشگر متن باز کنید، ممکن است نمایه DataFrame را نبینید. با این حال، اگر فایل CSV را در یک برنامه صفحه گسترده مانند اکسل باز کنید، ایندکس را به عنوان ستون اول خواهید دید.

رسیدگی به موارد خاص

هنگام نوشتن یک DataFrame در یک فایل CSV ممکن است با چند مورد خاص مواجه شوید.

مدیریت مقادیر NaN

به طور پیش فرض، پانداها می نویسند NaN مقادیر فایل CSV با این حال، شما می توانید این رفتار را با استفاده از na_rep پارامتر. این پارامتر به شما امکان می دهد رشته ای را که جایگزین می شود مشخص کنید NaN ارزش های.

در اینجا یک مثال است:

import pandas as pd
import numpy as np


df = pd.DataFrame({
   'A': ('foo', np.nan, 'baz'),
   'B': ('alpha', 'beta', np.nan)
})

df.to_csv('nan_values.csv', na_rep='NULL')

در nan_values.csv فایل، NaN مقادیر جایگزین می شوند NULL:

,A,B
0,foo,alpha
1,NULL,beta
2,baz,NULL

نوشتن زیر مجموعه ای از DataFrame در CSV

گاهی اوقات، ممکن است بخواهید فقط زیر مجموعه ای از DataFrame را در فایل CSV بنویسید. شما می توانید این کار را با استفاده از columns پارامتر. این پارامتر به شما امکان می دهد لیستی از نام ستون ها را که می خواهید در فایل CSV قرار دهید را مشخص کنید.

در اینجا یک مثال است:

import pandas as pd


df = pd.DataFrame({
   'A': ('foo', 'bar', 'baz'),
   'B': ('alpha', 'beta', 'gamma'),
   'C': (1, 2, 3)
})

df.to_csv('subset.csv', columns=('A', 'B'))

را subset.csv فایل فقط شامل ستون های “A” و “B” خواهد بود:

,A,B
0,foo,alpha
1,bar,beta
2,baz,gamma

یاد آوردن، pandas یک کتابخانه قدرتمند است و گزینه های زیادی برای نوشتن DataFrames در فایل های CSV ارائه می دهد. حتما بررسی کنید اسناد رسمی برای یادگیری بیشتر

نتیجه

در این آموزش، قدرت پانداها و توانایی آن در نوشتن DataFrame در یک فایل CSV را بررسی کرده ایم. ما روش اصلی نوشتن DataFrame در یک فایل CSV، روش تعیین جداکننده و روش نوشتن DataFrame در فایل CSV بدون فهرست را یاد گرفتیم. ما همچنین به بررسی موارد خاص در نوشتن یک DataFrame در یک فایل CSV پرداخته‌ایم.

(برچسب‌ها به ترجمه)# python



منتشر شده در 1402-12-28 23:29:03

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید