السبت، 16 نوفمبر 2024

العمل مع صفوف وأعمدة إطار البيانات في بايثون

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


ما هو إطار البيانات؟

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

إنشاء إطار بيانات بسيط

دعونا نتعلم كيفية إنشاء إطار بيانات بسيط باستخدام مثال.

import pandas as pd

data = {
“TotalScore”: [420, 380, 390],
“MathScore”: [50, 40, 45]
}

#load data into a DataFrame object:
df = pd.DataFrame(data)

print(df)

النتيجة

TotalScore MathScore

0 420 50
1 380 40
2 390 45

الطباعة الانتقائية لعمود واحد من إطار البيانات

دعنا نرى كيفية تحديد العمود المطلوب في بايثون. لنفترض أن لدينا إطار بيانات كما هو موضح في الحالة أعلاه. يمكننا تحديد العمود المطلوب حسب عموده.

1
print(df[['MathScore']])

سيقوم الكود أعلاه فقط بطباعة قيم العمود “MathScore”.

إضافة أعمدة إلى إطار بيانات في بايثون

الآن، في بعض الأحيان، قد نرغب في إضافة بعض الأعمدة الإضافية كجزء من جمع البيانات. يمكننا إضافة المزيد من الأعمدة إلى إطار البيانات الخاص بنا عن طريق إعلان قائمة جديدة وتحويلها إلى عمود في إطار البيانات.

1
2
3
4
5
6
7
8
9
# creating  a new list called name.
name = ['Rhema', 'Mehreen', 'Nitin']
    
# Using 'Name' as the column name
# and equating it to the list
df['Name'] = name
    
# Observe the result
print(df)

الناتج

1
2
3
4
5
   TotalScore  MathScore     Name
 
0         420         50    Rhema
1         380         40  Mehreen
2         390         45    Nitin

حذف عمود

يمكننا استخدام التابع drop() في إطار بيانات pandas لحذف عمود معين.

1
2
# dropping passed columns
df.drop(["Name"], axis = 1, inplace = True)

سيتم الآن حذف العمود “Name” من إطار البيانات الخاص بنا.

العمل مع صفوف إطار البيانات

الآن، دعونا نحاول فهم الطرق لإجراء هذه العمليات على الصفوف.

اختيار صف

لتحديد صفوف من إطار بيانات، يمكننا إما استخدام التابع loc[] أو طريقة iloc[]. في التابع loc[]، يمكننا استرداد الصف باستخدام قيمة مؤشر الصف. يمكننا أيضًا استخدام دالة iloc[] لاسترداد الصفوف باستخدام موقع العدد الصحيح لدالة iloc[].

1
2
3
4
5
6
7
8
9
10
11
12
# importing pandas package
import pandas as pd
    
# making data frame from csv file
data = pd.read_csv("employees.csv", index_col ="Name")
    
# retrieving row by loc method
first = data.loc["Shubham"]
second = data.loc["Mariann"]
    
    
print(first, "\n\n\n", second)

في الكود أعلاه، نقوم بتحميل ملف CSV كإطار بيانات ونقوم بتعيين العمود “Name” كقيمة مؤشر له. لاحقًا، نستخدم مؤشر الصفوف لاسترجاعها.

إنشاء صف إطار بيانات في بايثون

لإدراج صف جديد في إطار البيانات الخاص بنا، يمكننا استخدام دالة append() أو دالة concat() أو دالة loc[] في إطار البيانات.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#adding a new row using the next index value.
df.loc[len(df.index)] = ['450', '80', 'Disha']
    
display(df)
  
#using append function
  
new_data = {'Name': 'Ripun', 'MathScore': 89, 'TotalScore': 465}
df = df.append(new_data, ignore_index = True)
  
#using concat function
  
concat_data = {'Name':['Sara', 'Daniel'],
        'MathScore':[89, 90],
        'TotalScore':[410, 445]
       }
    
df2 = pd.DataFrame(concat_data)
  
    
df3 = pd.concat([df, df2], ignore_index = True)
df3.reset_index()
    
print(df3)

الناتج

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Using loc[] method
 
  TotalScore MathScore     Name
 
0        420        50    Rhema
1        380        40  Mehreen
2        390        45    Nitin
3        450        80    Disha
 
Using append() function
 
  TotalScore MathScore     Name
 
0        420        50    Rhema
1        380        40  Mehreen
2        390        45    Nitin
3        450        80    Disha
4        465        89    Ripun
 
 
 Using Concat() function
 
  TotalScore MathScore     Name
 
0        420        50    Rhema
1        380        40  Mehreen
2        390        45    Nitin
3        450        80    Disha
4        465        89    Ripun
5        410        89     Sara
6        445        90   Daniel

حذف صف

يمكننا استخدام التابع drop() لحذف الصفوف. يتعين علينا تمرير قيمة مؤشر الصف كحجة إلى التابع.

1
2
3
4
5
6
7
8
# importing pandas module
import pandas as pd
    
# making data frame from csv file
data = pd.read_csv("employees.csv", index_col ="Name" )
    
# dropping passed values
data.drop(["Shubham", "Mariann"], inplace = True)

ومن ثم، في هذه المقالة، ناقشنا طرقًا مختلفة للتعامل مع الصفوف والأعمدة في بايثون. بشكل عام، إطارات البيانات هي هياكل ثنائية الأبعاد في بايثون يمكننا استخدامها لتخزين البيانات وأداء وظائف أخرى مختلفة.

ليست هناك تعليقات:

إرسال تعليق

😂11 مكتبة بايثون ممتعة لجعل يومك أفضل☀️

  في هذه المقالة سأقدم لك 11 مكتبة استمتعت باللعب بها وفكرت في مشاركتها معك.