اذهب إلى المحتوى

السؤال

نشر

أريد عمل Dataframe بحيث يتم إضافة محتواها صف بصف وليس انشاءها كاملة من البداية.

قمت بعمل Dataframe فارغة تحتوي فقط على أسماء الأعمدة :

res = DataFrame(columns=('Col1', 'Col2', 'Col3'))

كيف يمكنني إصافة بيانات سواء كانت عددية أو حروف؟

Recommended Posts

  • 0
نشر (معدل)

يمكنك إستخدام df.loc[i] حيث i هي رقم الصف المراد إضافته، يمكنك إستعمالها كالتالي:

import pandas as pd
from numpy.random import randint

df = pd.DataFrame(columns=['lib', 'qty1', 'qty2'])
for i in range(5):
	df.loc[i] = ['Row' + str(i)] + list(randint(10, size=2))

df
   Col1  Col2  Col3
0  Row0    3    3
1  Row1    2    4
2  Row2    2    8
3  Row4    2    1
4  Row5    9    6

كذلك يمكنك عمل قاموس dictionary وإضافة العناصر فية ثم تحويله للشكل dataframe كالتالي:

rows = []
for row in input_rows:

        dict1 = {}
        dict1.update(anything) 

        rows.append(dict1)

df = pd.DataFrame(rows)   

 

تم التعديل في بواسطة Ahmed Sharshar
  • 0
نشر

الطريقة الأفضل هي استخدام القوائم:

# نقوم بإنشاء قائمة فارغة
data = []
#هو تابع تقوم من خلاله بالوصول لبياناتك function
for a, b, c in function():
    # تقوم بإضافة البيانات سطر سطر كالتالي
    data.append([a, b, c])
# نقوم بتحويل القائمة السابقة إلى داتافريم ونضع أسماء الأعمدة التي نريدها
df = pd.DataFrame(data, columns=['lib', 'qty1', 'qty2'])

أما الطرق الأخرى فهي غير عملية عندما تكون بياناتك كبيرة لأنها تأخذ وقت كبير.

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...