Datasets documentation

فئات الجداول

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v4.8.4).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

فئات الجداول

يعتمد كل كائن Dataset على جدول PyArrow. يمكن تحميل الجدول من القرص (بإسناد الذاكرة) أو في الذاكرة. يتوفر عدة أنواع من الجداول، وكلها ترث من table.Table.

جدول

فئة datasets.table.Table

< >

( table: Table )

يغلّف جدول pyarrow باستخدام التركيب. هذا هو الفئة الأساسية لـ InMemoryTable وMemoryMappedTable وConcatenationTable.

يُنفّذ جميع الخصائص/الدوال الأساسية لفئة pyarrow Table باستثناء تحويلات الجدول: slice, filter, flatten, combine_chunks, cast, add_column, append_column, remove_column, set_column, rename_columns وdrop.

تختلف طريقة تنفيذ هذه الأساليب في الفئات الفرعية.

validate

< >

( *args**kwargs )

المعاملات

  • full (bool، القيمة الافتراضية False) — إذا كانت True، يتم تنفيذ الفحوصات المكلفة، وإلا تُنفَّذ الفحوصات الرخيصة فقط.

يرفع

pa.lib.ArrowInvalid

  • pa.lib.ArrowInvalid — إذا فشلت عملية التحقق

أداء فحوصات التحقق. يتم رفع استثناء إذا فشل التحقق.

بشكل افتراضي، تُنفَّذ فحوصات التحقق الرخيصة فقط. مرّر full=True لإجراء فحوصات تحقق شاملة (قد تكون O(n)).

يساوي

< >

( *args**kwargs ) → bool

المعاملات

  • other (جدول) — الجدول الذي تتم المقارنة معه.
  • check_metadata bool، القيمة الافتراضية False) — ما إذا كان يجب التحقق من تساوي بيانات وصفية المخطط (schema metadata) أيضًا.

يعيد

bool

تحقق مما إذا كانت محتويات جدولين متساويتين.

to_batches

< >

( *args**kwargs )

المعاملات

  • max_chunksize (int، القيمة الافتراضية None) — الحد الأقصى لحجم مقاطع RecordBatch. قد تكون المقاطع الفردية أصغر اعتمادًا على تخطيط المقاطع للأعمدة الفردية.

تحويل الجدول إلى قائمة من كائنات RecordBatch (متجاورة).

to_pydict

< >

( *args**kwargs ) → dict

يعيد

dict

تحويل الجدول إلى dict أو OrderedDict.

to_pandas

< >

( *args**kwargs ) → pandas.Series or pandas.DataFrame

المعاملات

  • memory_pool (MemoryPool، القيمة الافتراضية None) — وحدة ذاكرة Arrow MemoryPool المستخدمة للتخصيصات. تُستخدم وحدة الذاكرة الافتراضية إذا لم يتم تمرير وحدة.
  • strings_to_categorical (bool، القيمة الافتراضية False) — ترميز أنواع النصوص (UTF8) والثنائية إلى pandas.Categorical.
  • categories (list، الافتراضي empty) — قائمة الحقول التي يجب إرجاعها على شكل pandas.Categorical. ينطبق فقط على هياكل البيانات المشابهة للجداول.
  • zero_copy_only (bool، القيمة الافتراضية False) — ارفع استثناء ArrowException إذا كان استدعاء هذه الدالة سيتطلب نسخ البيانات الأساسية.
  • integer_object_nulls (bool، القيمة الافتراضية False) — تحويل الأعداد الصحيحة التي تحتوي على قيم فارغة إلى كائنات.
  • date_as_object (bool، القيمة الافتراضية True) — تحويل التواريخ إلى كائنات. إذا كانت False، يتم التحويل إلى نوع datetime64[ns].
  • timestamp_as_object (bool، القيمة الافتراضية False) — تحويل الطوابع الزمنية غير النانوثانية (np.datetime64) إلى كائنات. هذا مفيد إذا كانت لديك طوابع زمنية لا تتناسب مع نطاق التواريخ المعتاد للطوابع الزمنية النانوثانية (1678 م - 2262 م). إذا كانت القيمة False، يتم تحويل جميع الطوابع الزمنية إلى نوع البيانات datetime64[ns].
  • use_threads (bool، القيمة الافتراضية True) — ما إذا كان سيتم موازاة التحويل باستخدام عدة خيوط.
  • deduplicate_objects (bool، القيمة الافتراضية False) — لا تنشئ نسخًا متعددة من كائنات بايثون عند إنشائها، لتوفير استخدام الذاكرة. ستكون عملية التحويل أبطأ.
  • ignore_metadata (bool، القيمة الافتراضية False) — إذا كانت True، فلا تُستخدم بيانات pandas الوصفية لإعادة بناء فهرس DataFrame، إن وُجد.
  • safe (bool، القيمة الافتراضية True) — بالنسبة لبعض أنواع البيانات، يلزم إجراء تحويل (cast) لتخزين البيانات في إطار بيانات pandas أو سلسلة Series (على سبيل المثال، تُخزَّن الطوابع الزمنية دائمًا بالنانو ثانية في pandas). يتحكم هذا الخيار في ما إذا كان التحويل آمنًا أم لا.
  • split_blocks (bool، القيمة الافتراضية False) — إذا كانت True، يتم إنشاء كتلة داخلية واحدة لكل عمود عند إنشاء pandas.DataFrame من RecordBatch أو Table. على الرغم من أن هذا قد يقلل مؤقتًا من استهلاك الذاكرة، إلا أن عمليات pandas المختلفة قد تُطلق عملية “توحيد” (consolidation) التي قد تُفاقم استخدام الذاكرة.
  • self_destruct (bool، القيمة الافتراضية False) — تجريبي: إذا كانت True، فسيتم محاولة تحرير ذاكرة Arrow الأصلية أثناء تحويل كائن Arrow إلى pandas. إذا استخدمت الكائن بعد استدعاء to_pandas مع هذا الخيار، فسيؤدي ذلك إلى انهيار برنامجك.
  • types_mapper (function، القيمة الافتراضية None) — دالة تُحوّل نوع pyarrow DataType إلى ExtensionDtype في pandas. يمكن استخدام هذه الدالة لتجاوز النوع الافتراضي في pandas عند تحويل الأنواع المدمجة في pyarrow أو في حال غياب pandas_metadata في مخطط الجدول. تستقبل الدالة نوع pyarrow DataType ومن المتوقع أن تُرجع ExtensionDtype في pandas أو None إذا كان يجب استخدام التحويل الافتراضي لذلك النوع. إذا كان لديك قاموس للتحويل، يمكنك تمرير dict.get كدالة.

يعيد

pandas.Series أو pandas.DataFrame

pandas.Series أو pandas.DataFrame اعتمادًا على نوع الكائن

تحويل إلى مصفوفة NumPy متوافقة مع pandas أو إطار بيانات DataFrame، حسب ما يناسب.

to_string

< >

( *args**kwargs )

حقل

< >

( *args**kwargs )

المعاملات

  • i (Union[int, str]) — مؤشر الحقل أو اسمه الذي سيتم استرجاعه.

اختر حقلًا في المخطط (schema) من خلال اسم العمود أو الفهرس الرقمي.

عمود

< >

( *args**kwargs )

المعاملات

  • i (Union[int, str]) — مؤشر العمود أو اسمه الذي سيتم استرجاعه.

اختر عمودًا باسم العمود أو بالفهرس الرقمي.

itercolumns

< >

( *args**kwargs )

مُتكرِّر على جميع الأعمدة بترتيبها العددي.

مخطط

< >

( )

مخطط الجدول وأعمدته.

أعمدة

< >

( )

قائمة بجميع الأعمدة بالترتيب الرقمي.

num_columns

< >

( )

عدد الأعمدة في هذه الجدول.

num_rows

< >

( )

عدد الصفوف في هذه الجدول.

بسبب تعريف الجدول، فإن جميع الأعمدة تحتوي على نفس عدد الصفوف.

الشكل

< >

( ) → (int, int)

يعيد

(int, int)

عدد الصفوف وعدد الأعمدة.

أبعاد الجدول: (#rows, #columns).

بايت

< >

( )

إجمالي عدد البايتات المستهلكة بواسطة عناصر الجدول.

InMemoryTable

فئة datasets.table.InMemoryTable

< >

( table: Table )

يُقال إن الجدول في الذاكرة (in-memory) عندما يُحمَّل في ذاكرة الوصول العشوائي (RAM) للمستخدم.

يقوم التخليل (Pickling) بنسخ جميع البيانات باستخدام الذاكرة. تنفيذها بسيط ويعتمد بشكل مباشر على طرق جدول pyarrow الأساسية.

يختلف هذا عن جدول MemoryMapped الذي لا ينسخ عملية التخليل (pickling) جميع البيانات في الذاكرة. أما في حالة MemoryMapped، فإن عملية فك التخليل (unpickling) تعيد تحميل الجدول من القرص بدلاً من ذلك.

يجب استخدام InMemoryTable عندما تتسع البيانات للذاكرة، بينما تُحجز MemoryMapped للبيانات الأكبر من حجم الذاكرة أو عندما تريد إبقاء بصمة الذاكرة لتطبيقك منخفضة.

validate

< >

( *args**kwargs )

المعاملات

  • full (bool، القيمة الافتراضية False) — إذا كانت True، يتم تنفيذ الفحوصات المكلفة، وإلا تُنفَّذ الفحوصات الرخيصة فقط.

يرفع

pa.lib.ArrowInvalid

  • pa.lib.ArrowInvalid — إذا فشلت عملية التحقق

أداء فحوصات التحقق. يتم رفع استثناء إذا فشل التحقق.

بشكل افتراضي، تُنفَّذ فحوصات التحقق الرخيصة فقط. مرّر full=True لإجراء فحوصات تحقق شاملة (قد تكون O(n)).

يساوي

< >

( *args**kwargs ) → bool

المعاملات

  • other (جدول) — الجدول الذي تتم المقارنة معه.
  • check_metadata bool، القيمة الافتراضية False) — ما إذا كان يجب التحقق من تساوي بيانات وصفية المخطط (schema metadata) أيضًا.

يعيد

bool

تحقق مما إذا كانت محتويات جدولين متساويتين.

to_batches

< >

( *args**kwargs )

المعاملات

  • max_chunksize (int، القيمة الافتراضية None) — الحد الأقصى لحجم مقاطع RecordBatch. قد تكون المقاطع الفردية أصغر اعتمادًا على تخطيط المقاطع للأعمدة الفردية.

تحويل الجدول إلى قائمة من كائنات RecordBatch (متجاورة).

to_pydict

< >

( *args**kwargs ) → dict

يعيد

dict

تحويل الجدول إلى dict أو OrderedDict.

to_pandas

< >

( *args**kwargs ) → pandas.Series or pandas.DataFrame

المعاملات

  • memory_pool (MemoryPool، القيمة الافتراضية None) — وحدة ذاكرة Arrow MemoryPool المستخدمة للتخصيصات. تُستخدم وحدة الذاكرة الافتراضية إذا لم يتم تمرير وحدة.
  • strings_to_categorical (bool، القيمة الافتراضية False) — ترميز أنواع النصوص (UTF8) والثنائية إلى pandas.Categorical.
  • categories (list، الافتراضي empty) — قائمة الحقول التي يجب إرجاعها على شكل pandas.Categorical. ينطبق فقط على هياكل البيانات المشابهة للجداول.
  • zero_copy_only (bool، القيمة الافتراضية False) — ارفع استثناء ArrowException إذا كان استدعاء هذه الدالة سيتطلب نسخ البيانات الأساسية.
  • integer_object_nulls (bool، القيمة الافتراضية False) — تحويل الأعداد الصحيحة التي تحتوي على قيم فارغة إلى كائنات.
  • date_as_object (bool، القيمة الافتراضية True) — تحويل التواريخ إلى كائنات. إذا كانت False، يتم التحويل إلى نوع datetime64[ns].
  • timestamp_as_object (bool، القيمة الافتراضية False) — تحويل الطوابع الزمنية غير النانوثانية (np.datetime64) إلى كائنات. هذا مفيد إذا كانت لديك طوابع زمنية لا تتناسب مع نطاق التواريخ المعتاد للطوابع الزمنية النانوثانية (1678 م - 2262 م). إذا كانت القيمة False، يتم تحويل جميع الطوابع الزمنية إلى نوع البيانات datetime64[ns].
  • use_threads (bool، القيمة الافتراضية True) — ما إذا كان سيتم موازاة التحويل باستخدام عدة خيوط.
  • deduplicate_objects (bool، القيمة الافتراضية False) — لا تنشئ نسخًا متعددة من كائنات بايثون عند إنشائها، لتوفير استخدام الذاكرة. ستكون عملية التحويل أبطأ.
  • ignore_metadata (bool، القيمة الافتراضية False) — إذا كانت True، فلا تُستخدم بيانات pandas الوصفية لإعادة بناء فهرس DataFrame، إن وُجد.
  • safe (bool، القيمة الافتراضية True) — بالنسبة لبعض أنواع البيانات، يلزم إجراء تحويل (cast) لتخزين البيانات في إطار بيانات pandas أو سلسلة Series (على سبيل المثال، تُخزَّن الطوابع الزمنية دائمًا بالنانو ثانية في pandas). يتحكم هذا الخيار في ما إذا كان التحويل آمنًا أم لا.
  • split_blocks (bool، القيمة الافتراضية False) — إذا كانت True، يتم إنشاء كتلة داخلية واحدة لكل عمود عند إنشاء pandas.DataFrame من RecordBatch أو Table. على الرغم من أن هذا قد يقلل مؤقتًا من استهلاك الذاكرة، إلا أن عمليات pandas المختلفة قد تُطلق عملية “توحيد” (consolidation) التي قد تُفاقم استخدام الذاكرة.
  • self_destruct (bool، القيمة الافتراضية False) — تجريبي: إذا كانت True، فسيتم محاولة تحرير ذاكرة Arrow الأصلية أثناء تحويل كائن Arrow إلى pandas. إذا استخدمت الكائن بعد استدعاء to_pandas مع هذا الخيار، فسيؤدي ذلك إلى انهيار برنامجك.
  • types_mapper (function، القيمة الافتراضية None) — دالة تُحوّل نوع pyarrow DataType إلى ExtensionDtype في pandas. يمكن استخدام هذه الدالة لتجاوز النوع الافتراضي في pandas عند تحويل الأنواع المدمجة في pyarrow أو في حال غياب pandas_metadata في مخطط الجدول. تستقبل الدالة نوع pyarrow DataType ومن المتوقع أن تُرجع ExtensionDtype في pandas أو None إذا كان يجب استخدام التحويل الافتراضي لذلك النوع. إذا كان لديك قاموس للتحويل، يمكنك تمرير dict.get كدالة.

يعيد

pandas.Series أو pandas.DataFrame

pandas.Series أو pandas.DataFrame اعتمادًا على نوع الكائن

تحويل إلى مصفوفة NumPy متوافقة مع pandas أو إطار بيانات DataFrame، حسب ما يناسب.

to_string

< >

( *args**kwargs )

حقل

< >

( *args**kwargs )

المعاملات

  • i (Union[int, str]) — مؤشر الحقل أو اسمه الذي سيتم استرجاعه.

اختر حقلًا في المخطط (schema) من خلال اسم العمود أو الفهرس الرقمي.

عمود

< >

( *args**kwargs )

المعاملات

  • i (Union[int, str]) — مؤشر العمود أو اسمه الذي سيتم استرجاعه.

اختر عمودًا باسم العمود أو بالفهرس الرقمي.

itercolumns

< >

( *args**kwargs )

مُتكرِّر على جميع الأعمدة بترتيبها العددي.

مخطط

< >

( )

مخطط الجدول وأعمدته.

أعمدة

< >

( )

قائمة بجميع الأعمدة بالترتيب الرقمي.

num_columns

< >

( )

عدد الأعمدة في هذه الجدول.

num_rows

< >

( )

عدد الصفوف في هذه الجدول.

بسبب تعريف الجدول، فإن جميع الأعمدة تحتوي على نفس عدد الصفوف.

الشكل

< >

( ) → (int, int)

يعيد

(int, int)

عدد الصفوف وعدد الأعمدة.

أبعاد الجدول: (#rows, #columns).

بايت

< >

( )

إجمالي عدد البايتات المستهلكة بواسطة عناصر الجدول.

column_names

< >

( )

أسماء أعمدة الجدول.

مقطع

< >

( offset = 0length = None )

المعاملات

  • offset (int، القيمة الافتراضية 0) — الإزاحة من بداية الجدول إلى الجزء المقطوع.
  • length (int، القيمة الافتراضية None) — طول المقطع (الافتراضي هو حتى نهاية الجدول بدءًا من الإزاحة).

احسب شريحة بدون نسخ (zero-copy) لهذه الجدولة (Table).

فلتر

< >

( *args**kwargs )

اختر السجلات من جدول. راجع pyarrow.compute.filter للاستخدام الكامل.

تسطيح

< >

( *args**kwargs )

المعاملات

  • memory_pool (MemoryPool، القيمة الافتراضية None) — لإسنادات الذاكرة، إذا لزم الأمر، وإلا فاستخدم المسبح الافتراضي.

Flatten هذه الجدول. يتم تسطيح كل عمود من نوع struct إلى عمود واحد لكل حقل في الهيكل. تبقى الأعمدة الأخرى دون تغيير.

combine_chunks

< >

( *args**kwargs )

المعاملات

  • memory_pool (MemoryPool، القيمة الافتراضية None) — لإسنادات الذاكرة، إذا لزم الأمر، وإلا فاستخدم المسبح الافتراضي.

أنشئ جدولاً جديداً عن طريق دمج المقاطع التي يتكون منها هذا الجدول.

تُدمج جميع المقاطع الأساسية في ChunkedArray لكل عمود في مقطع واحد أو لا شيء.

cast

< >

( *args**kwargs )

المعاملات

  • target_schema (Schema) — المخطط الذي سيتم التحويل إليه، حيث يجب أن تتطابق أسماء الحقول وترتيبها.
  • safe (bool، الافتراضي True) — التحقق من حدوث تجاوزات أو تحويلات غير آمنة أخرى.

قم بتحويل قيم الجدول إلى مخطط آخر.

replace_schema_metadata

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • metadata (dict، القيمة الافتراضية None) —

يعيد

datasets.table.Table

shallow_copy

تجريبي: إنشاء نسخة سطحية من الجدول عن طريق استبدال بيانات الوصف (metadata) المفتاح-القيمة للمخطط (schema) ببيانات الوصف الجديدة المحددة (والتي قد تكون None، مما يؤدي إلى حذف أي بيانات وصفية موجودة مسبقًا).

add_column

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • i (int) — المؤشر الذي يُوضع العمود فيه.
  • field_ (Union[str, pyarrow.Field]) — إذا تم تمرير نص، يتم استنتاج النوع من بيانات العمود.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — بيانات العمود.

يعيد

datasets.table.Table

جدول جديد مع إضافة العمود المُمرَّر.

إضافة عمود إلى الجدول عند الموضع المحدد.

يُعاد جدول جديد مع العمود المضاف، ويبقى كائن الجدول الأصلي دون تغيير.

append_column

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • field_ (Union[str, pyarrow.Field]) — إذا تم تمرير نص، يتم استنتاج النوع من بيانات العمود.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — بيانات العمود.

يعيد

datasets.table.Table

جدول جديد مع إضافة العمود المُمرَّر.

إضافة العمود في نهاية الأعمدة.

remove_column

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • i (int) — مؤشر العمود المراد حذفه.

يعيد

datasets.table.Table

جدول جديد بدون العمود.

إنشاء جدول جديد مع إزالة العمود المحدد.

set_column

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • i (int) — المؤشر الذي يُوضع العمود فيه.
  • field_ (Union[str, pyarrow.Field]) — إذا تم تمرير نص، يتم استنتاج النوع من بيانات العمود.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — بيانات العمود.

يعيد

datasets.table.Table

جدول جديد مع مجموعة الأعمدة المُمرَّرة.

استبدال العمود في الجدول عند الموضع المحدد.

rename_columns

< >

( *args**kwargs )

إنشاء جدول جديد مع إعادة تسمية الأعمدة إلى الأسماء المُقدَّمة.

select

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • columns (Union[List[str], List[int]]) — أسماء الأعمدة أو الفهارس الصحيحة التي يجب اختيارها.

جدول جديد بالأعمدة المحددة، مع الحفاظ على البيانات الوصفية.

حدد أعمدة الجدول.

يعيد جدولًا جديدًا بالأعمدة المحددة، مع الحفاظ على البيانات الوصفية.

إسقاط

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • columns (List[str]) — قائمة بأسماء الحقول التي تشير إلى أعمدة موجودة.

يعيد

datasets.table.Table

جدول جديد بدون الأعمدة.

يرفع

KeyError

  • KeyError — : إذا لم تكن أي من أسماء الأعمدة المُمررة موجودة.

احذف عمودًا واحدًا أو أكثر وعُد جدولًا جديدًا.

from_file

< >

( filename: str )

from_buffer

< >

( buffer: Buffer )

from_pandas

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • df (pandas.DataFrame) —
  • schema (pyarrow.Schema، اختياري) — المخطط المتوقع لجداول Arrow. يمكن استخدام هذا لتحديد نوع الأعمدة إذا تعذّر استنتاجه تلقائيًا. إذا تم تمريره، فسيكون المخطط الناتج مطابقًا تمامًا لهذا المخطط. ستُثير الأعمدة المحددة في المخطط والتي لم يتم العثور عليها في أعمدة DataFrame أو في فهرسه خطأً. أما الأعمدة الإضافية أو مستويات الفهرس في DataFrame غير المحددة في المخطط فسيتم تجاهلها.
  • preserve_index (bool، اختياري) — ما إذا كان سيتم تخزين الفهرس كعمود إضافي في Table الناتج. القيمة الافتراضية None ستخزّن الفهرس كعمود، باستثناء RangeIndex الذي يُخزَّن كبيانات وصفية فقط. استخدم preserve_index=True لإجباره على التخزين كعمود.
  • nthreads (int، القيمة الافتراضية None (قد يستخدم حتى عدد معالجات النظام من الخيوط)) — إذا كانت القيمة أكبر من 1، يتم تحويل الأعمدة إلى Arrow بالتوازي باستخدام عدد الخيوط المحدد.
  • columns (List[str]، اختياري) — قائمة بالأعمدة التي سيتم تحويلها. إذا كانت None، فسيتم استخدام جميع الأعمدة.
  • safe (bool، الافتراضي True) — التحقق من تجاوزات الحدود أو تحويلات غير آمنة أخرى،

يعيد

datasets.table.Table

تحويل pandas.DataFrame إلى جدول Arrow.

تُستنتج أنواع الأعمدة في جدول Arrow الناتج من أنواع dtypes الخاصة بـ pandas.Series داخل DataFrame. في حالة السلاسل غير الكائنية (non-object Series)، يُترجم نوع NumPy إلى ما يعادله في Arrow. أما في حالة object، فيجب تخمين نوع البيانات من خلال فحص الكائنات Python الموجودة في هذا السلسلة.

انتبه إلى أن سلسلة من نوع object لا تحمل معلومات كافية دائمًا للتوصل إلى نوع Arrow ذي معنى. في حال تعذّر استنتاج النوع، على سبيل المثال لأن إطار البيانات طوله 0 أو لأن السلسلة تحتوي فقط على كائنات None/nan، يتم تعيين النوع إلى null. يمكن تجنّب هذا السلوك من خلال إنشاء مخطط صريح وتوريده إلى هذه الدالة.

أمثلة:

>>> import pandas as pd
>>> import pyarrow as pa
>>> df = pd.DataFrame({
    ...     'int': [1, 2],
    ...     'str': ['a', 'b']
    ... })
>>> pa.Table.from_pandas(df)
<pyarrow.lib.Table object at 0x7f05d1fb1b40>

from_arrays

< >

( *args**kwargs )

المعاملات

  • arrays (List[Union[pyarrow.Array, pyarrow.ChunkedArray]]) — مصفوفات متساوية الطول يجب أن تُشكّل الجدول.
  • names (List[str]، اختياري) — أسماء لأعمدة الجدول. إذا لم يُمرَّر، يجب تمرير مخطط البيانات.
  • schema (Schema، القيمة الافتراضية None) — مخطط الجدول المنشأ. إذا لم يُمرَّر، يجب تمرير الأسماء.
  • metadata (Union[dict, Mapping]، القيمة الافتراضية None) — بيانات وصفية اختيارية للمخطط (إذا تم استنتاجه).

إنشاء جدول من مصفوفات Arrow.

from_pydict

< >

( *args**kwargs )

المعاملات

  • mapping (Union[dict, Mapping]) — تعيين من السلاسل النصية إلى مصفوفات أو قوائم بايثون.
  • schema (Schema، القيمة الافتراضية None) — إذا لم يُمرَّر، فسيتم استنتاجه من قيم Mapping
  • metadata (Union[dict, Mapping]، القيمة الافتراضية None) — بيانات وصفية اختيارية للمخطط (إذا تم استنتاجه).

إنشاء جدول من مصفوفات Arrow أو أعمدة.

from_batches

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • batches (Union[Sequence[pyarrow.RecordBatch], Iterator[pyarrow.RecordBatch]]) — تسلسل من RecordBatch ليتم تحويله، ويجب أن تكون جميع المخططات متساوية.
  • schema (Schema، القيمة الافتراضية None) — إذا لم يتم تمريرها، فستُستنتج من أول RecordBatch.

يعيد

datasets.table.Table

أنشئ جدولاً من تسلسل أو مُتكرِّر من RecordBatches الخاصة بـ Arrow.

MemoryMappedTable

فئة datasets.table.MemoryMappedTable

< >

( table: Tablepath: strreplays: typing.Optional[list[tuple[str, tuple, dict]]] = None )

يُقال إن الجدول مُرمَّز في الذاكرة (memory mapped) عندما لا يستخدم ذاكرة الوصول العشوائي (RAM) للمستخدم، بل يقوم بتحميل البيانات من القرص بدلاً من ذلك.

لا ينسخ التخليل البيانات إلى الذاكرة. بل يُخلَّل مسار ملف arrow المُرمَّز في الذاكرة فقط، إلى جانب قائمة التحويلات التي يجب «إعادة تشغيلها» عند إعادة تحميل الجدول من القرص.

يتطلب تنفيذها تخزين سجل لجميع التحويلات التي طُبِّقت على جدول pyarrow الأساسي، بحيث يمكن “إعادة تشغيلها” عند إعادة تحميل الجدول من القرص.

يختلف هذا عن جدول InMemoryTable، حيث يؤدي التحويل إلى كائنات (pickling) إلى نسخ جميع البيانات الموجودة في الذاكرة.

يجب استخدام InMemoryTable عندما تتسع البيانات للذاكرة، بينما تُحجز MemoryMapped للبيانات الأكبر من حجم الذاكرة أو عندما تريد إبقاء بصمة الذاكرة لتطبيقك منخفضة.

validate

< >

( *args**kwargs )

المعاملات

  • full (bool، القيمة الافتراضية False) — إذا كانت True، يتم تنفيذ الفحوصات المكلفة، وإلا تُنفَّذ الفحوصات الرخيصة فقط.

يرفع

pa.lib.ArrowInvalid

  • pa.lib.ArrowInvalid — إذا فشلت عملية التحقق

أداء فحوصات التحقق. يتم رفع استثناء إذا فشل التحقق.

بشكل افتراضي، تُنفَّذ فحوصات التحقق الرخيصة فقط. مرّر full=True لإجراء فحوصات تحقق شاملة (قد تكون O(n)).

يساوي

< >

( *args**kwargs ) → bool

المعاملات

  • other (جدول) — الجدول الذي تتم المقارنة معه.
  • check_metadata bool، القيمة الافتراضية False) — ما إذا كان يجب التحقق من تساوي بيانات وصفية المخطط (schema metadata) أيضًا.

يعيد

bool

تحقق مما إذا كانت محتويات جدولين متساويتين.

to_batches

< >

( *args**kwargs )

المعاملات

  • max_chunksize (int، القيمة الافتراضية None) — الحد الأقصى لحجم مقاطع RecordBatch. قد تكون المقاطع الفردية أصغر اعتمادًا على تخطيط المقاطع للأعمدة الفردية.

تحويل الجدول إلى قائمة من كائنات RecordBatch (متجاورة).

to_pydict

< >

( *args**kwargs ) → dict

يعيد

dict

تحويل الجدول إلى dict أو OrderedDict.

to_pandas

< >

( *args**kwargs ) → pandas.Series or pandas.DataFrame

المعاملات

  • memory_pool (MemoryPool، القيمة الافتراضية None) — وحدة ذاكرة Arrow MemoryPool المستخدمة للتخصيصات. تُستخدم وحدة الذاكرة الافتراضية إذا لم يتم تمرير وحدة.
  • strings_to_categorical (bool، القيمة الافتراضية False) — ترميز أنواع النصوص (UTF8) والثنائية إلى pandas.Categorical.
  • categories (list، الافتراضي empty) — قائمة الحقول التي يجب إرجاعها على شكل pandas.Categorical. ينطبق فقط على هياكل البيانات المشابهة للجداول.
  • zero_copy_only (bool، القيمة الافتراضية False) — ارفع استثناء ArrowException إذا كان استدعاء هذه الدالة سيتطلب نسخ البيانات الأساسية.
  • integer_object_nulls (bool، القيمة الافتراضية False) — تحويل الأعداد الصحيحة التي تحتوي على قيم فارغة إلى كائنات.
  • date_as_object (bool، القيمة الافتراضية True) — تحويل التواريخ إلى كائنات. إذا كانت False، يتم التحويل إلى نوع datetime64[ns].
  • timestamp_as_object (bool، القيمة الافتراضية False) — تحويل الطوابع الزمنية غير النانوثانية (np.datetime64) إلى كائنات. هذا مفيد إذا كانت لديك طوابع زمنية لا تتناسب مع نطاق التواريخ المعتاد للطوابع الزمنية النانوثانية (1678 م - 2262 م). إذا كانت القيمة False، يتم تحويل جميع الطوابع الزمنية إلى نوع البيانات datetime64[ns].
  • use_threads (bool، القيمة الافتراضية True) — ما إذا كان سيتم موازاة التحويل باستخدام عدة خيوط.
  • deduplicate_objects (bool، القيمة الافتراضية False) — لا تنشئ نسخًا متعددة من كائنات بايثون عند إنشائها، لتوفير استخدام الذاكرة. ستكون عملية التحويل أبطأ.
  • ignore_metadata (bool، القيمة الافتراضية False) — إذا كانت True، فلا تُستخدم بيانات pandas الوصفية لإعادة بناء فهرس DataFrame، إن وُجد.
  • safe (bool، القيمة الافتراضية True) — بالنسبة لبعض أنواع البيانات، يلزم إجراء تحويل (cast) لتخزين البيانات في إطار بيانات pandas أو سلسلة Series (على سبيل المثال، تُخزَّن الطوابع الزمنية دائمًا بالنانو ثانية في pandas). يتحكم هذا الخيار في ما إذا كان التحويل آمنًا أم لا.
  • split_blocks (bool، القيمة الافتراضية False) — إذا كانت True، يتم إنشاء كتلة داخلية واحدة لكل عمود عند إنشاء pandas.DataFrame من RecordBatch أو Table. على الرغم من أن هذا قد يقلل مؤقتًا من استهلاك الذاكرة، إلا أن عمليات pandas المختلفة قد تُطلق عملية “توحيد” (consolidation) التي قد تُفاقم استخدام الذاكرة.
  • self_destruct (bool، القيمة الافتراضية False) — تجريبي: إذا كانت True، فسيتم محاولة تحرير ذاكرة Arrow الأصلية أثناء تحويل كائن Arrow إلى pandas. إذا استخدمت الكائن بعد استدعاء to_pandas مع هذا الخيار، فسيؤدي ذلك إلى انهيار برنامجك.
  • types_mapper (function، القيمة الافتراضية None) — دالة تُحوّل نوع pyarrow DataType إلى ExtensionDtype في pandas. يمكن استخدام هذه الدالة لتجاوز النوع الافتراضي في pandas عند تحويل الأنواع المدمجة في pyarrow أو في حال غياب pandas_metadata في مخطط الجدول. تستقبل الدالة نوع pyarrow DataType ومن المتوقع أن تُرجع ExtensionDtype في pandas أو None إذا كان يجب استخدام التحويل الافتراضي لذلك النوع. إذا كان لديك قاموس للتحويل، يمكنك تمرير dict.get كدالة.

يعيد

pandas.Series أو pandas.DataFrame

pandas.Series أو pandas.DataFrame اعتمادًا على نوع الكائن

تحويل إلى مصفوفة NumPy متوافقة مع pandas أو إطار بيانات DataFrame، حسب ما يناسب.

to_string

< >

( *args**kwargs )

حقل

< >

( *args**kwargs )

المعاملات

  • i (Union[int, str]) — مؤشر الحقل أو اسمه الذي سيتم استرجاعه.

اختر حقلًا في المخطط (schema) من خلال اسم العمود أو الفهرس الرقمي.

عمود

< >

( *args**kwargs )

المعاملات

  • i (Union[int, str]) — مؤشر العمود أو اسمه الذي سيتم استرجاعه.

اختر عمودًا باسم العمود أو بالفهرس الرقمي.

itercolumns

< >

( *args**kwargs )

مُتكرِّر على جميع الأعمدة بترتيبها العددي.

مخطط

< >

( )

مخطط الجدول وأعمدته.

أعمدة

< >

( )

قائمة بجميع الأعمدة بالترتيب الرقمي.

num_columns

< >

( )

عدد الأعمدة في هذه الجدول.

num_rows

< >

( )

عدد الصفوف في هذه الجدول.

بسبب تعريف الجدول، فإن جميع الأعمدة تحتوي على نفس عدد الصفوف.

الشكل

< >

( ) → (int, int)

يعيد

(int, int)

عدد الصفوف وعدد الأعمدة.

أبعاد الجدول: (#rows, #columns).

بايت

< >

( )

إجمالي عدد البايتات المستهلكة بواسطة عناصر الجدول.

column_names

< >

( )

أسماء أعمدة الجدول.

مقطع

< >

( offset = 0length = None )

المعاملات

  • offset (int، القيمة الافتراضية 0) — الإزاحة من بداية الجدول إلى الجزء المقطوع.
  • length (int، القيمة الافتراضية None) — طول المقطع (الافتراضي هو حتى نهاية الجدول بدءًا من الإزاحة).

احسب شريحة بدون نسخ (zero-copy) لهذه الجدولة (Table).

فلتر

< >

( *args**kwargs )

اختر السجلات من جدول. راجع pyarrow.compute.filter للاستخدام الكامل.

تسطيح

< >

( *args**kwargs )

المعاملات

  • memory_pool (MemoryPool، القيمة الافتراضية None) — لإسنادات الذاكرة، إذا لزم الأمر، وإلا فاستخدم المسبح الافتراضي.

Flatten هذه الجدول. يتم تسطيح كل عمود من نوع struct إلى عمود واحد لكل حقل في الهيكل. تبقى الأعمدة الأخرى دون تغيير.

combine_chunks

< >

( *args**kwargs )

المعاملات

  • memory_pool (MemoryPool، القيمة الافتراضية None) — لإسنادات الذاكرة، إذا لزم الأمر، وإلا فاستخدم المسبح الافتراضي.

أنشئ جدولاً جديداً عن طريق دمج المقاطع التي يتكون منها هذا الجدول.

تُدمج جميع المقاطع الأساسية في ChunkedArray لكل عمود في مقطع واحد أو لا شيء.

cast

< >

( *args**kwargs )

المعاملات

  • target_schema (Schema) — المخطط الذي سيتم التحويل إليه، حيث يجب أن تتطابق أسماء الحقول وترتيبها.
  • safe (bool، الافتراضي True) — التحقق من حدوث تجاوزات أو تحويلات غير آمنة أخرى.

تحويل قيم الجدول إلى مخطط آخر

replace_schema_metadata

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • metadata (dict، القيمة الافتراضية None) —

يعيد

datasets.table.Table

shallow_copy

تجريبي: إنشاء نسخة سطحية من الجدول عن طريق استبدال بيانات الوصف (metadata) المفتاح-القيمة للمخطط (schema) ببيانات الوصف الجديدة المحددة (والتي قد تكون None، مما يؤدي إلى حذف أي بيانات وصفية موجودة مسبقًا).

add_column

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • i (int) — المؤشر الذي يُوضع العمود فيه.
  • field_ (Union[str, pyarrow.Field]) — إذا تم تمرير نص، يتم استنتاج النوع من بيانات العمود.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — بيانات العمود.

يعيد

datasets.table.Table

جدول جديد مع إضافة العمود المُمرَّر.

إضافة عمود إلى الجدول عند الموضع المحدد.

يُعاد جدول جديد مع العمود المضاف، ويبقى كائن الجدول الأصلي دون تغيير.

append_column

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • field_ (Union[str, pyarrow.Field]) — إذا تم تمرير نص، يتم استنتاج النوع من بيانات العمود.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — بيانات العمود.

يعيد

datasets.table.Table

جدول جديد مع إضافة العمود المُمرَّر.

إضافة العمود في نهاية الأعمدة.

remove_column

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • i (int) — مؤشر العمود المراد حذفه.

يعيد

datasets.table.Table

جدول جديد بدون العمود.

إنشاء جدول جديد مع إزالة العمود المحدد.

set_column

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • i (int) — المؤشر الذي يُوضع العمود فيه.
  • field_ (Union[str, pyarrow.Field]) — إذا تم تمرير نص، يتم استنتاج النوع من بيانات العمود.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — بيانات العمود.

يعيد

datasets.table.Table

جدول جديد مع مجموعة الأعمدة المُمرَّرة.

استبدال العمود في الجدول عند الموضع المحدد.

rename_columns

< >

( *args**kwargs )

إنشاء جدول جديد مع إعادة تسمية الأعمدة إلى الأسماء المُقدَّمة.

select

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • columns (Union[List[str], List[int]]) — أسماء الأعمدة أو الفهارس الصحيحة التي يجب اختيارها.

جدول جديد بالأعمدة المحددة، مع الحفاظ على البيانات الوصفية.

حدد أعمدة الجدول.

يعيد جدولًا جديدًا بالأعمدة المحددة، مع الحفاظ على البيانات الوصفية.

إسقاط

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • columns (List[str]) — قائمة بأسماء الحقول التي تشير إلى أعمدة موجودة.

يعيد

datasets.table.Table

جدول جديد بدون الأعمدة.

يرفع

KeyError

  • KeyError — : إذا لم تكن أي من أسماء الأعمدة المُمررة موجودة.

احذف عمودًا واحدًا أو أكثر وعُد جدولًا جديدًا.

from_file

< >

( filename: strreplays = None )

ConcatenationTable

فئة datasets.table.ConcatenationTable

< >

( table: Tableblocks: list )

تتكوّن الجدولة من دمج عدة جداول تُسمى الكتل. تتيح الدمج على المحور 0 (إضافة صفوف) والمحور 1 (إضافة أعمدة).

تُسمى الجداول الأساسية “كتل” ويمكن أن تكون كائنات من نوع InMemoryTable أو MemoryMappedTable. هذا يتيح دمج الجداول التي تأتي من الذاكرة أو التي تكون مرسومة في الذاكرة. عندما يُحفظ كائن ConcatenationTable باستخدام pickle، يتم حفظ كل كتلة على حدة:

  • تُحفظ كائنات InMemoryTable عبر عملية التخليل (pickling) عن طريق نسخ جميع البيانات في الذاكرة.
  • تُحفظ كائنات MemoryMappedTable عبر التخليل دون نسخ البيانات إلى الذاكرة. وبدلًا من ذلك، يُخلَّل المسار إلى ملف arrow المُرمَّز في الذاكرة فقط، إلى جانب قائمة التحويلات التي يجب «إعادة تشغيلها» عند إعادة تحميل الجدول من القرص.

يتطلب تنفيذها تخزين كل كتلة بشكل منفصل. تخزن خاصية blocks قائمة من قوائم الكتل. يجمع المحور الأول الجداول على طول المحور 0 (أي يضيف صفوفًا)، بينما يجمع المحور الثاني الجداول على طول المحور 1 (أي يضيف أعمدة).

إذا كانت بعض الأعمدة مفقودة عند الدمج على المحور 0، يتم ملؤها بقيم فارغة. يتم ذلك باستخدام pyarrow.concat_tables(tables, promote=True).

يمكنك الوصول إلى الجدول المدمج بالكامل عن طريق الوصول إلى خاصية ConcatenationTable.table، والوصول إلى الكتل عن طريق الوصول إلى خاصية ConcatenationTable.blocks.

validate

< >

( *args**kwargs )

المعاملات

  • full (bool، القيمة الافتراضية False) — إذا كانت True، يتم تنفيذ الفحوصات المكلفة، وإلا تُنفَّذ الفحوصات الرخيصة فقط.

يرفع

pa.lib.ArrowInvalid

  • pa.lib.ArrowInvalid — إذا فشلت عملية التحقق

أداء فحوصات التحقق. يتم رفع استثناء إذا فشل التحقق.

بشكل افتراضي، تُنفَّذ فحوصات التحقق الرخيصة فقط. مرّر full=True لإجراء فحوصات تحقق شاملة (قد تكون O(n)).

يساوي

< >

( *args**kwargs ) → bool

المعاملات

  • other (جدول) — الجدول الذي تتم المقارنة معه.
  • check_metadata bool، القيمة الافتراضية False) — ما إذا كان يجب التحقق من تساوي بيانات وصفية المخطط (schema metadata) أيضًا.

يعيد

bool

تحقق مما إذا كانت محتويات جدولين متساويتين.

to_batches

< >

( *args**kwargs )

المعاملات

  • max_chunksize (int، القيمة الافتراضية None) — الحد الأقصى لحجم مقاطع RecordBatch. قد تكون المقاطع الفردية أصغر اعتمادًا على تخطيط المقاطع للأعمدة الفردية.

تحويل الجدول إلى قائمة من كائنات RecordBatch (متجاورة).

to_pydict

< >

( *args**kwargs ) → dict

يعيد

dict

تحويل الجدول إلى dict أو OrderedDict.

to_pandas

< >

( *args**kwargs ) → pandas.Series or pandas.DataFrame

المعاملات

  • memory_pool (MemoryPool، القيمة الافتراضية None) — وحدة ذاكرة Arrow MemoryPool المستخدمة للتخصيصات. تُستخدم وحدة الذاكرة الافتراضية إذا لم يتم تمرير وحدة.
  • strings_to_categorical (bool، القيمة الافتراضية False) — ترميز أنواع النصوص (UTF8) والثنائية إلى pandas.Categorical.
  • categories (list، الافتراضي empty) — قائمة الحقول التي يجب إرجاعها على شكل pandas.Categorical. ينطبق فقط على هياكل البيانات المشابهة للجداول.
  • zero_copy_only (bool، القيمة الافتراضية False) — ارفع استثناء ArrowException إذا كان استدعاء هذه الدالة سيتطلب نسخ البيانات الأساسية.
  • integer_object_nulls (bool، القيمة الافتراضية False) — تحويل الأعداد الصحيحة التي تحتوي على قيم فارغة إلى كائنات.
  • date_as_object (bool، القيمة الافتراضية True) — تحويل التواريخ إلى كائنات. إذا كانت False، يتم التحويل إلى نوع datetime64[ns].
  • timestamp_as_object (bool، القيمة الافتراضية False) — تحويل الطوابع الزمنية غير النانوثانية (np.datetime64) إلى كائنات. هذا مفيد إذا كانت لديك طوابع زمنية لا تتناسب مع نطاق التواريخ المعتاد للطوابع الزمنية النانوثانية (1678 م - 2262 م). إذا كانت القيمة False، يتم تحويل جميع الطوابع الزمنية إلى نوع البيانات datetime64[ns].
  • use_threads (bool، القيمة الافتراضية True) — ما إذا كان سيتم موازاة التحويل باستخدام عدة خيوط.
  • deduplicate_objects (bool، القيمة الافتراضية False) — لا تنشئ نسخًا متعددة من كائنات بايثون عند إنشائها، لتوفير استخدام الذاكرة. ستكون عملية التحويل أبطأ.
  • ignore_metadata (bool، القيمة الافتراضية False) — إذا كانت True، فلا تُستخدم بيانات pandas الوصفية لإعادة بناء فهرس DataFrame، إن وُجد.
  • safe (bool، القيمة الافتراضية True) — بالنسبة لبعض أنواع البيانات، يلزم إجراء تحويل (cast) لتخزين البيانات في إطار بيانات pandas أو سلسلة Series (على سبيل المثال، تُخزَّن الطوابع الزمنية دائمًا بالنانو ثانية في pandas). يتحكم هذا الخيار في ما إذا كان التحويل آمنًا أم لا.
  • split_blocks (bool، القيمة الافتراضية False) — إذا كانت True، يتم إنشاء كتلة داخلية واحدة لكل عمود عند إنشاء pandas.DataFrame من RecordBatch أو Table. على الرغم من أن هذا قد يقلل مؤقتًا من استهلاك الذاكرة، إلا أن عمليات pandas المختلفة قد تُطلق عملية “توحيد” (consolidation) التي قد تُفاقم استخدام الذاكرة.
  • self_destruct (bool، القيمة الافتراضية False) — تجريبي: إذا كانت True، فسيتم محاولة تحرير ذاكرة Arrow الأصلية أثناء تحويل كائن Arrow إلى pandas. إذا استخدمت الكائن بعد استدعاء to_pandas مع هذا الخيار، فسيؤدي ذلك إلى انهيار برنامجك.
  • types_mapper (function، القيمة الافتراضية None) — دالة تُحوّل نوع pyarrow DataType إلى ExtensionDtype في pandas. يمكن استخدام هذه الدالة لتجاوز النوع الافتراضي في pandas عند تحويل الأنواع المدمجة في pyarrow أو في حال غياب pandas_metadata في مخطط الجدول. تستقبل الدالة نوع pyarrow DataType ومن المتوقع أن تُرجع ExtensionDtype في pandas أو None إذا كان يجب استخدام التحويل الافتراضي لذلك النوع. إذا كان لديك قاموس للتحويل، يمكنك تمرير dict.get كدالة.

يعيد

pandas.Series أو pandas.DataFrame

pandas.Series أو pandas.DataFrame اعتمادًا على نوع الكائن

تحويل إلى مصفوفة NumPy متوافقة مع pandas أو إطار بيانات DataFrame، حسب ما يناسب.

to_string

< >

( *args**kwargs )

حقل

< >

( *args**kwargs )

المعاملات

  • i (Union[int, str]) — مؤشر الحقل أو اسمه الذي سيتم استرجاعه.

اختر حقلًا في المخطط (schema) من خلال اسم العمود أو الفهرس الرقمي.

عمود

< >

( *args**kwargs )

المعاملات

  • i (Union[int, str]) — مؤشر العمود أو اسمه الذي سيتم استرجاعه.

اختر عمودًا باسم العمود أو بالفهرس الرقمي.

itercolumns

< >

( *args**kwargs )

مُتكرِّر على جميع الأعمدة بترتيبها العددي.

مخطط

< >

( )

مخطط الجدول وأعمدته.

أعمدة

< >

( )

قائمة بجميع الأعمدة بالترتيب الرقمي.

num_columns

< >

( )

عدد الأعمدة في هذه الجدول.

num_rows

< >

( )

عدد الصفوف في هذه الجدول.

بسبب تعريف الجدول، فإن جميع الأعمدة تحتوي على نفس عدد الصفوف.

الشكل

< >

( ) → (int, int)

يعيد

(int, int)

عدد الصفوف وعدد الأعمدة.

أبعاد الجدول: (#rows, #columns).

بايت

< >

( )

إجمالي عدد البايتات المستهلكة بواسطة عناصر الجدول.

column_names

< >

( )

أسماء أعمدة الجدول.

مقطع

< >

( offset = 0length = None )

المعاملات

  • offset (int، القيمة الافتراضية 0) — الإزاحة من بداية الجدول إلى الجزء المقطوع.
  • length (int، القيمة الافتراضية None) — طول المقطع (الافتراضي هو حتى نهاية الجدول بدءًا من الإزاحة).

احسب شريحة بدون نسخ (zero-copy) لهذه الجدولة (Table).

فلتر

< >

( mask*args**kwargs )

اختر السجلات من جدول. راجع pyarrow.compute.filter للاستخدام الكامل.

تسطيح

< >

( *args**kwargs )

المعاملات

  • memory_pool (MemoryPool، القيمة الافتراضية None) — لإسنادات الذاكرة، إذا لزم الأمر، وإلا فاستخدم المسبح الافتراضي.

Flatten هذه الجدول. يتم تسطيح كل عمود من نوع struct إلى عمود واحد لكل حقل في الهيكل. تبقى الأعمدة الأخرى دون تغيير.

combine_chunks

< >

( *args**kwargs )

المعاملات

  • memory_pool (MemoryPool، القيمة الافتراضية None) — لإسنادات الذاكرة، إذا لزم الأمر، وإلا فاستخدم المسبح الافتراضي.

أنشئ جدولاً جديداً عن طريق دمج المقاطع التي يتكون منها هذا الجدول.

تُدمج جميع المقاطع الأساسية في ChunkedArray لكل عمود في مقطع واحد أو لا شيء.

cast

< >

( target_schema*args**kwargs )

المعاملات

  • target_schema (Schema) — المخطط الذي سيتم التحويل إليه، حيث يجب أن تتطابق أسماء الحقول وترتيبها.
  • safe (bool، الافتراضي True) — التحقق من حدوث تجاوزات أو تحويلات غير آمنة أخرى.

قم بتحويل قيم الجدول إلى مخطط آخر.

replace_schema_metadata

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • metadata (dict، القيمة الافتراضية None) —

يعيد

datasets.table.Table

shallow_copy

تجريبي: إنشاء نسخة سطحية من الجدول عن طريق استبدال بيانات الوصف (metadata) المفتاح-القيمة للمخطط (schema) ببيانات الوصف الجديدة المحددة (والتي قد تكون None، مما يؤدي إلى حذف أي بيانات وصفية موجودة مسبقًا).

add_column

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • i (int) — المؤشر الذي يُوضع العمود فيه.
  • field_ (Union[str, pyarrow.Field]) — إذا تم تمرير نص، يتم استنتاج النوع من بيانات العمود.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — بيانات العمود.

يعيد

datasets.table.Table

جدول جديد مع إضافة العمود المُمرَّر.

إضافة عمود إلى الجدول عند الموضع المحدد.

يُعاد جدول جديد مع العمود المضاف، ويبقى كائن الجدول الأصلي دون تغيير.

append_column

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • field_ (Union[str, pyarrow.Field]) — إذا تم تمرير نص، يتم استنتاج النوع من بيانات العمود.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — بيانات العمود.

يعيد

datasets.table.Table

جدول جديد مع إضافة العمود المُمرَّر.

إضافة العمود في نهاية الأعمدة.

remove_column

< >

( i*args**kwargs ) → datasets.table.Table

المعاملات

  • i (int) — مؤشر العمود المراد حذفه.

يعيد

datasets.table.Table

جدول جديد بدون العمود.

إنشاء جدول جديد مع إزالة العمود المحدد.

set_column

< >

( *args**kwargs ) → datasets.table.Table

المعاملات

  • i (int) — المؤشر الذي يُوضع العمود فيه.
  • field_ (Union[str, pyarrow.Field]) — إذا تم تمرير نص، يتم استنتاج النوع من بيانات العمود.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — بيانات العمود.

يعيد

datasets.table.Table

جدول جديد مع مجموعة الأعمدة المُمرَّرة.

استبدال العمود في الجدول عند الموضع المحدد.

rename_columns

< >

( names*args**kwargs )

إنشاء جدول جديد مع إعادة تسمية الأعمدة إلى الأسماء المُقدَّمة.

select

< >

( columns*args**kwargs ) → datasets.table.Table

المعاملات

  • columns (Union[List[str], List[int]]) — أسماء الأعمدة أو الفهارس الصحيحة التي يجب اختيارها.

جدول جديد بالأعمدة المحددة، مع الحفاظ على البيانات الوصفية.

حدد أعمدة الجدول.

يعيد جدولًا جديدًا بالأعمدة المحددة، مع الحفاظ على البيانات الوصفية.

إسقاط

< >

( columns*args**kwargs ) → datasets.table.Table

المعاملات

  • columns (List[str]) — قائمة بأسماء الحقول التي تشير إلى أعمدة موجودة.

يعيد

datasets.table.Table

جدول جديد بدون الأعمدة.

يرفع

KeyError

  • KeyError — : إذا لم تكن أي من أسماء الأعمدة المُمررة موجودة.

احذف عمودًا واحدًا أو أكثر وعُد جدولًا جديدًا.

from_blocks

< >

( blocks: ~TableBlockContainer )

from_tables

< >

( tables: listaxis: int = 0 )

المعاملات

  • tables (قائمة من Table أو قائمة من pyarrow.Table) — قائمة من الجداول.
  • axis ({0, 1}, الافتراضي هو 0, ، أي عبر الصفوف) — المحور الذي تتم عبره عملية الدمج، حيث 0 تعني عبر الصفوف (رأسياً) و 1 تعني عبر الأعمدة (أفقياً).

    أُضيف في 1.6.0

أنشئ ConcatenationTable من قائمة جداول.

أدوات

datasets.table.concat_tables

< >

( tables: listaxis: int = 0 ) → datasets.table.Table

المعاملات

  • tables (قائمة من Table) — قائمة بالجداول التي سيتم دمجها.
  • axis ({0, 1}, الافتراضي هو 0, ، أي عبر الصفوف) — المحور الذي تتم عبره عملية الدمج، حيث 0 تعني عبر الصفوف (رأسياً) و 1 تعني عبر الأعمدة (أفقياً).

    أُضيف في 1.6.0

يعيد

datasets.table.Table

إذا كان عدد جداول الإدخال > 1، فإن الجدول المُعاد هو datasets.table.ConcatenationTable. وإلا، إذا كان هناك جدول واحد فقط، يُعاد كما هو.

دمج الجداول.

datasets.table.list_table_cache_files

< >

( table: Table ) → List[str]

يعيد

List[str]

قائمة بالمسارات إلى ملفات الكاش التي حمّلها الجدول.

احصل على ملفات الكاش التي تُحمّلها الجدول. تُستخدم ملفات الكاش عندما تأتي أجزاء من الجدول من القرص عبر خرائط الذاكرة.

Update on GitHub