في هذه المقالة، دعنا نرى كيفية إنشاء هياكل تشبه الجداول باستخدام بايثون والتعامل مع صفوفها وأعمدتها. سيكون هذا مفيدًا جدًا عندما نقوم بإنشاء تطبيقات علم البيانات التي تتطلب منا التعامل مع مجموعة كبيرة من البيانات. دعنا نرى كيف يمكننا تنفيذ وظائف أساسية مثل إنشاء وتحديث وحذف الصفوف/الأعمدة باستخدام بايثون.
ما هو إطار البيانات؟
نظرًا لكون بايثون لغة مستخدمة على نطاق واسع في تحليل البيانات ومعالجتها، فإنها تحتاج إلى تخزين البيانات في أشكال منظمة، كما هو الحال في الجداول التقليدية في شكل صفوف وأعمدة. نستخدم كائن 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) |
ومن ثم، في هذه المقالة، ناقشنا طرقًا مختلفة للتعامل مع الصفوف والأعمدة في بايثون. بشكل عام، إطارات البيانات هي هياكل ثنائية الأبعاد في بايثون يمكننا استخدامها لتخزين البيانات وأداء وظائف أخرى مختلفة.
ليست هناك تعليقات:
إرسال تعليق