يحتاج المطورون غالبًا إلى تصدير DataFrame من Pandas إلى Excel. Excel هو أداة ممتازة لمشاركة ومراجعة التقارير. تجعل Python مع Pandas هذا الأمر بسيطًا، لكن استخدام Aspose.Cells for Python يمنحك المزيد من التحكم. يمكنك تحويل DataFrame إلى Excel مباشرةً، من خلال CSV، عبر JSON، أو حتى تصدير عدة DataFrames إلى ملف واحد. في هذه المقالة، ستتعلم كيفية تحويل DataFrame من Pandas إلى Excel بأربع طرق خطوة بخطوة.

لماذا تستخدم Aspose.Cells لـ Pandas إلى Excel

يحتوي Pandas على دالة مدمجة toexcel() . تعمل هذه الدالة للتصدير الأساسي لكنها محدودة في الميزات. Aspose.Cells for Python هي واحدة من أفضل مكتبات Excel في بايثون للمطورين وتوفر محرك Excel كامل. يتيح لك حفظ DataFrames في Excel بموثوقية عالية. يمكنك أيضًا العمل مع الرسوم البيانية، والصيغ، والتنسيق، والملفات الكبيرة.

سيظهر لك هذا المقال كيفية تصدير DataFrame من Pandas إلى Excel باستخدام Aspose.Cells بطرق مختلفة.

قبل البدء، تأكد من تثبيت ما يلي:

  1. تحميل Aspose.Cells for Python من الإصدارات أو التثبيت باستخدام pip:
pip install aspose-cells-python
  1. باندا – التثبيت باستخدام pip:
pip install pandas

ستتيح لك هذان المكتبتان تحويل DataFrames الخاصة بPandas إلى ملفات Excel.

الطريقة 1: تحويل DataFrame إلى Excel مباشرة باستخدام Aspose.Cells

المهمة الأكثر شيوعًا هي تصدير DataFrame من Pandas إلى Excel مباشرة. باستخدام Aspose.Cells، يمكنك إنشاء مصنف، استيراد قيم DataFrame، وحفظه كملف Excel.

اتبع الخطوات أدناه لتحويل DataFrame إلى Excel:

  1. Build a sample dataset.
  2. قم بإنشاء مصنف Excel فارغ.
  3. قم بالوصول إلى الورقة الأولى في المصنف.
  4. أدخل أسماء أعمدة DataFrame في خلايا Excel.
  5. قم بالتكرار عبر كل صف في DataFrame وضع القيم في الخلايا.
  6. تصدير المصنف النهائي إلى ملف إكسل.

يمثل مثال الكود التالي كيفية تحويل Pandas إلى Excel مباشرة:

import aspose.cells as ac
import pandas as pd

# خطوة 1: إنشاء DataFrame عينة
data = {
    'name': ['Alice', 'Bob', 'Charlie', 'David'],
    'age': [25, 32, 18, 47],
    'city': ['New York', 'Paris', 'London', 'Berlin']
}
df = pd.DataFrame(data)

# خطوة 2: إنشاء مصنف جديد
wb = ac.Workbook()

# الخطوة 3: احصل على ورقة العمل الأولى
worksheet = wb.worksheets[0]

# الخطوة 4: احصل على مجموعة الخلايا
cells = worksheet.cells

# الخطوة 5: كتابة أسماء أعمدة DataFrame إلى Excel
rowindex = 0
colindex = 0
for column in df:
    cell = cells.get(rowindex, colindex)
    cell.put_value(df[column].name)
    colindex += 1

# الخطوة 6: كتابة صفوف DataFrame إلى Excel
for index, row in df.iterrows():
    rowindex += 1
    colindex = 0
    cell = cells.get(rowindex, colindex)
    cell.put_value(row["name"])
    colindex += 1
    cell = cells.get(rowindex, colindex)
    cell.put_value(row["age"])
    colindex += 1
    cell = cells.get(rowindex, colindex)
    cell.put_value(row["city"])
    colindex += 1

# الخطوة 7: احفظ DataFrame كملف Excel
wb.save("direct_df_to_excel.xlsx")
تحويل DataFrame إلى Excel مباشرة باستخدام Aspose.Cells

تحويل DataFrame إلى Excel مباشرة باستخدام Aspose.Cells.

هذا الكود يقوم بحفظ DataFrame الخاص بـ Pandas في Excel في الموقع المحدد. يمكنك تغيير المسار ليتناسب مع نظامك.

هذه الطريقة تمنحك السيطرة الكاملة على كيفية كتابة بيانات DataFrame من Pandas إلى Excel. إنها الطريقة الأكثر مباشرة لتحويل DF إلى Excel باستخدام Aspose.Cells.

الطريقة 2: تحويل DataFrame إلى Excel عبر CSV

طريقة بسيطة أخرى هي حفظ DataFrame الخاص بك من Pandas كملف CSV أولاً، ثم تحويل هذا الملف CSV إلى Excel باستخدام Aspose.Cells. هذه الطريقة مفيدة عندما تكون عمليتك بالفعل تنتج مخرجات CSV وتحتاج إلى ملف Excel نظيف.

يرجى اتباع الخطوات التالية لتحويل DataFrame إلى Excel عبر CSV:

  1. Build sample data.
  2. احفظ DataFrame كملف CSV باستخدام طريقة tocsv() من Pandas.
  3. افتح ملف CSV كدفتر ملاحظات.
  4. قم بتصدير المصنف إلى ملف .xlsx.

الكود التالي يوضح كيفية تحويل Pandas إلى Excel عبر CSV:

import aspose.cells as ac
import pandas as pd

# الخطوة 1: إنشاء إطار بيانات عينة
data = {
    'name': ['Alice', 'Bob', 'Charlie', 'David'],
    'age': [25, 32, 18, 47],
    'city': ['New York', 'Paris', 'London', 'Berlin']
}
df = pd.DataFrame(data)

# الخطوة 2: حفظ DataFrame كـ CSV
df.to_csv("temp.csv", index=False)

# الخطوة 3: تحميل ملف CSV باستخدام Aspose.Cells
wb = ac.Workbook("temp.csv")

# الخطوة 4: حفظ كملف إكسل
wb.save("df_via_csv.xlsx")

هذا النهج يقوم أولاً بإنشاء ملف CSV، ثم يحوله إلى Excel. ويضمن أن تحويل Pandas إلى Excel يعمل حتى إذا كانت خطتك تعتمد بالفعل على ملفات CSV.

استخدم هذه الطريقة عندما تريد الانتقال من CSV إلى Excel بسرعة مع الحفاظ على مرونة Pandas و Aspose.Cells.

الطريقة 3: تحويل DataFrame إلى Excel عبر JSON

تستخدم العديد من واجهات برمجة التطبيقات (APIs) JSON. يمكنك أيضًا تمرير JSON إلى Aspose.Cells لإنشاء ورقة Excel. تقوم هذه الطريقة بتحويل DataFrame من Pandas إلى JSON أولاً، ثم تقوم بتحميل ذلك JSON إلى Excel كجدول. إنها تحافظ على تصديرك من Pandas إلى Excel نظيفًا وموثوقًا. كما أنها تساعد عندما تريد السيطرة الصارمة على الرؤوس وأنواع البيانات.

يرجى اتباع الخطوات أدناه:

  1. Build sample data for the demo.
  2. استدعِ df.tojson(orient='records') للتحويل.
  3. قم بتهيئة كائن فئة Workbook() واحصل على ورقة العمل الأولى.
  4. قم بتمكين arrayastable لاستيراد جداول بشكل صحيح.
  5. استدعاء طريقة JsonUtility.importdata() لاستيراد JSON إلى خلايا ورقة العمل.
  6. اكتب الملف النهائي إلى .xlsx.

الكود المثال التالي يوضح كيفية تحويل DataFrame من Pandas إلى Excel عبر JSON:

import pandas as pd
from aspose.cells.utility import JsonUtility, JsonLayoutOptions
from aspose.cells import Workbook, Worksheet, Cells

# إنشاء إطار بيانات pandas عينة
data = {'Name': ['Alice', 'Bob', 'Charlie'],
        'Age': [25, 30, 35],
        'City': ['New York', 'San Francisco', 'Los Angeles']}
        	
df = pd.DataFrame(data)

# حول pandas DataFrame إلى JSON
json_string = df.to_json(orient='records')

workbook = Workbook()

# احصل على ورقة العمل الأولى
worksheet = workbook.worksheets[0]

# احصل على الخلايا
cells = worksheet.cells

options = JsonLayoutOptions()
unit = JsonUtility()

# Processes as table
options.array_as_table = True

# استورد بيانات JSON إلى ورقة العمل بدءًا من الصف 0، العمود 0
unit.import_data(json_string, cells, 0, 0, options)

# احفظ كملف إكسل
workbook.save("df_via_json.xlsx")

يؤدي orient='records' إلى إنتاج قائمة من الكائنات. كل كائن يربط المفاتيح بأسماء الأعمدة. arrayastable=True يخبر Aspose.Cells بمعاملة المصفوفة كجدول حقيقي مع رؤوس. يقوم المستورد بكتابة القيم في الخلايا بدءًا من A1. وهذا يمنحك تخطيطًا يمكن التنبؤ به في Excel.

الطريقة 4: تصدير عدة DataFrames إلى أوراق Excel

يمكنك كتابة أكثر من إطار بيانات Pandas في ملف Excel واحد. يذهب كل إطار بيانات إلى ورقة خاصة به. هذه الطريقة تمنحك تصديرًا نظيفًا من pandas إلى Excel للتقارير والجداول المجمعة.

يرجى اتباع الخطوات أدناه:

  1. Create a function that writes many DataFrames to many sheets.
  2. تهيئة دفتر عمل جديد.
  3. أضف ورقة لكل DataFrame وسمها من sheetnames.
  4. ضع أسماء الأعمدة في الصف الأول.
  5. قم بالتكرار عبر تو tuples DataFrame و كتابة قيم الخلايا.
  6. تصدير كملف XLSX باستخدام طريقة workbook.save() .

يظهر مثال الشيفرة التالي كيفية تصدير عدة DataFrames من Pandas إلى أوراق Excel:

import pandas as pd
from aspose.cells import Workbook, WorksheetCollection, SaveFormat

def write_multiple_dataframes_to_excel(dataframes, sheet_names, output_path):
    """
    Write multiple DataFrames to multiple sheets in an Excel file
    :param dataframes: List of pandas.DataFrame
    :param sheet_names: List of sheet names (same length as dataframes)
    :param output_path: Output Excel file path
    """
    # إنشاء مصنف فارغ
    workbook = Workbook()

    # اختياري: قم بإزالة الورقة الفارغة الافتراضية إذا لم تحتاج إليها
    # workbook.worksheets.removeat(0)

   for df, name in zip(dataframes, sheet_names):
        # أضف ورقة عمل جديدة
        worksheet = workbook.worksheets.add(name)
        cells = worksheet.cells

        # اكتب رؤوس الأعمدة
       for col_idx, col_name in enumerate(df.columns):
            cells.get(0, col_idx).put_value(str(col_name))

        # Write row data
       for row_idx, row in enumerate(df.itertuples(index=False), start=1):
           for col_idx, value in enumerate(row):
                cells.get(row_idx, col_idx).put_value(value)

    # احفظ كملف إكسل
    workbook.save(output_path, SaveFormat.XLSX)

# قم بإنشاء إطارين بيانيين
df1 = pd.DataFrame({
    "Name": ["Alice", "Bob"],
    "Age": [25, 30]
})

df2 = pd.DataFrame({
    "Product": ["Book", "Pen"],
    "Price": [10.5, 1.99]
})

# اكتب إلى إكسل
write_multiple_dataframes_to_excel(
    dataframes=[df1, df2],
    sheet_names=["People", "Products"],
    output_path="MultiDataFrame.xlsx"
)
تصدير عدة DataFrames من Pandas إلى أوراق Excel باستخدام Aspose.Cells

تصدير العديد من DataFrames الخاصة بـ Pandas إلى أوراق Excel باستخدام Aspose.Cells.

تقوم الدالة بربط كل DataFrame باسم ورقة. إنها تكتب العناوين في الصف 0 والبيانات بدءًا من الصف 1. يقوم Aspose.Cells بكتابة القيم في الخلايا مع نوع قوي. يحتفظ ملف XLSX النهائي بجداولك واضحة وجاهزة للمشاركة.

احصل على ترخيص مجاني

قم بتقييم Aspose.Cells for Python عبر .NET بدون قيود. اطلب ترخيصاً مؤقتاً مجانياً من license page.طبق ذلك في كودك لإزالة قيود التقييم. اختبر كل ميزة، بما في ذلك DF إلى Excel، الرسوم البيانية، الصيغ، والملفات الكبيرة.

بي دي إلى إكسل: موارد مجانية

يرجى استخدام هذه الموارد لتعزيز معرفتك وتحسين فهمك.

استنتاج

لقد تعلمت طرقًا متنوعة لتصدير DataFrame من Pandas إلى Excel باستخدام Aspose.Cells for Python. يمكنك حفظ DataFrame مباشرة، أو استخدام CSV، أو استخدام JSON، أو كتابة عدة DataFrames في ملف واحد. كل طريقة بسيطة وسريعة وموثوقة. إذا كنت تبحث عن ميزات Excel المتقدمة التي تتجاوز Pandas، فإن Aspose.Cells هو الخيار الصحيح. جربه في مشروعك القادم وانتقل من Pandas إلى Excel مع السيطرة الكاملة.

إذا كانت لديك أي أسئلة، تفضل بزيارة منتدى الدعم المجاني.سنكون سعداء بمساعدتك.

انظر أيضًا