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

السؤال

Recommended Posts

  • 0
نشر

وعليكم السلام

يمكنك تحويل ملفات CSV إلى قاعدة بيانات SQL بسهولة باستخدام مكتبة مثل:

  •  pandas
  • sqlite3 
  • SQLAlchemy

إليك كود  باستخدام sqlite3:

import pandas as pd
import sqlite3

# تحميل ملف CSV
df = pd.read_csv("data.csv")

# إنشاء اتصال بقاعدة البيانات
conn = sqlite3.connect("database.db")

# تحويل البيانات إلى SQL
df.to_sql("table_name", conn, if_exists="replace", index=False)

# إغلاق الاتصال بقاعدة البيانات
conn.close()

اما الفائدة من تحويل CSV إلى SQL في مجال تعلم الآلة والتعلم العميق:

  •  إذا كنت تعمل مع بيانات ضخمة، فوجود البيانات في قاعدة بيانات SQL يسهل التعامل مع ال complex queries وأكثر كفاءة مقارنةً بـ CSV الذي يعاني من مشاكل عندما تكون البيانات كبيرة.
  • و ال SQL يقدم هيكلًا منظمًا للبيانات، حيث يمكنك الربط بين الجداول والاستعلام عن البيانات بطريقة أكثر تماسكًا من مجرد ملفات CSV .

اما في المشاريع الحقيقية
فغالبًا ما تحتاج إلى إجراء تعديلات متكررة على البيانات، سواء بإضافة بيانات جديدة أو تعديل الموجودة، وهو ما يتم بسهولة باستخدام SQL.

و ذلك يتم استخدام ال SQL بشكل رئيسي. 

اما ال CSV: يتم استخدامه بشكل مؤقت أو لنقل البيانات بين الأنظمة المختلفة، ولكنه ليس مثاليًا لتخزين البيانات بشكل دائم بسبب محدودياته في الأداء والتنظيم.

بايثون يوفر لك الأدوات للتعامل مع كليهما، مما يسهل التنقل بينهما حسب الحاجة في مشروعك.

  • 0
نشر

تتوفر طرق مختلفة، أولها يدويًا بإنشاء سكربت SQL لاستيراد بيانات CSV إلى قاعدة البيانات، يتضمن ذلك إنشاء جدول بنفس بنية ملف CSV ثم استخدام عبارة INSERT INTO لملء الجدول بالبيانات من ملف CSV.

أو استخدام أداة تحويل من CSV إلى SQL، وهنالك العديد من الأدوات والبرامج المتاحة عبر الإنترنت والتي يمكنها تحويل ملفات CSV إلى صيغة SQL، وعلى سبيل الذكر أدوات CSV to SQL و Convert CSV to SQL و CSV2SQL.

أو الأفضل استخدام بايثون لقراءة ملف CSV وإنشاء سكربت SQL لاستيراد البيانات إلى قاعدة البيانات.

import csv
import sqlite3

conn = sqlite3.connect('database.db')
cursor = conn.cursor()

cursor.execute('''
    CREATE TABLE IF NOT EXISTS mytable (
        column1 TEXT,
        column2 INTEGER,
        column3 REAL
    );
''')

with open('data.csv', 'r') as csvfile:
    reader = csv.reader(csvfile)
    for row in reader:
        cursor.execute('''
            INSERT INTO mytable (column1, column2, column3)
            VALUES (?, ?, ?);
        ''', row)

conn.commit()
conn.close()

في المشاريع الواقعية، ستجد أنه يتم الإعتماد على قواعد بيانات SQL لتخزين وإدارة مجموعات البيانات الكبيرة، بينما ملفات CSV لتصدير البيانات واستيرادها، ولكن ليس كحل أساسي لتخزين البيانات.

للتوضيح، في مشروع نظام التوصية، تستخدم قاعدة بيانات SQL لتخزين بيانات سلوك المستخدم وبيانات تعريف العنصر ونماذج التوصية، وملفات CSV لتصدير البيانات للتحليل أو لاستيراد بيانات جديدة إلى النظام.

وفي مشروع معالجة اللغة الطبيعية، تستخدم قاعدة بيانات SQL لتخزين البيانات النصية والتعليقات التوضيحية ومخرجات النموذج، وملفات CSV لتصدير البيانات للتحليل أو لاستيراد بيانات جديدة إلى النظام.

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

أيضًا توف طريقة لمراجعة البيانات، وهو أمر ضروري في تعلم الآلة والتعلم العميق حيث تكون جودة البيانات أمرًا بالغ الأهمية،  وتسمح لك بإنشاء إصدارات من البيانات، وهو أمر ضروري في تعلم الآلة والتعلم العميق حيث تتغير البيانات باستمرار.

  • 0
نشر

إحدى الطرق تتمّ عبر إنشاء قاعدة بيانات SQL جديدة ثم إنشاء جدول جديد مطابق لتركيب بيانات ملف CSV الخاص بك مع التأكد من تحديد أنواع البيانات المناسبة لكل عمود عبر استيراد ملف CSV إلى جدول SQL:

  • يمكنك استخدام أداة واجهة المستخدم الرسومية في قاعدة البيانات.
  • استخدام أداة مثل phpMyAdmin أو SQLWorkbench.
  • كتابة استعلام SQL لتحميل البيانات من ملف CSV إلى الجدول.

ومن فوائد تحويل البيانات من CSV إلى SQL أنّ معالجة البيانات ستكون بكفاءة فقواعد البيانات SQL توفر إمكانيات أكبر في تخزين وإدارة البيانات مقارنة بملفات CSV، مما يسهل إجراء استعلامات واستخراج بيانات بحيث يمكّن من تعريف قيود وتأكيدات على البيانات لضمان سلامتها وصحتها وقواعد البيانات مصممة للتعامل مع كميات كبيرة من البيانات بكفاءة، بينما ملفات CSV لها قيود في هذا الجانب.

بالنسبة للمشاريع الحقيقية، غالبا ما يتم استخدام قواعد البيانات SQL كمخزن رئيسي للبيانات، بينما قد تستخدم ملفات CSV لأغراض معينة كنقل البيانات أو التحليل الأولي وهذا كله يعتمد على طبيعة المشروع ومتطلباته.

أما في مجال تعلم الآلة والتعلم العميق، يمكن استخدام ملفات CSV كمصدر أولي للبيانات لإجراء التحليلات والتجارب الأولية ومن ثم يمكن استيراد هذه البيانات إلى قواعد بيانات SQL لمزيد من المعالجة والتحليل المتقدم.

  • 0
نشر
بتاريخ On 24‏/8‏/2024 at 11:31 قال Khaled Osama3:

وعليكم السلام

يمكنك تحويل ملفات CSV إلى قاعدة بيانات SQL بسهولة باستخدام مكتبة مثل:

  •  pandas
  • sqlite3 
  • SQLAlchemy

إليك كود  باستخدام sqlite3:

import pandas as pd
import sqlite3

# تحميل ملف CSV
df = pd.read_csv("data.csv")

# إنشاء اتصال بقاعدة البيانات
conn = sqlite3.connect("database.db")

# تحويل البيانات إلى SQL
df.to_sql("table_name", conn, if_exists="replace", index=False)

# إغلاق الاتصال بقاعدة البيانات
conn.close()

اما الفائدة من تحويل CSV إلى SQL في مجال تعلم الآلة والتعلم العميق:

  •  إذا كنت تعمل مع بيانات ضخمة، فوجود البيانات في قاعدة بيانات SQL يسهل التعامل مع ال complex queries وأكثر كفاءة مقارنةً بـ CSV الذي يعاني من مشاكل عندما تكون البيانات كبيرة.
  • و ال SQL يقدم هيكلًا منظمًا للبيانات، حيث يمكنك الربط بين الجداول والاستعلام عن البيانات بطريقة أكثر تماسكًا من مجرد ملفات CSV .

اما في المشاريع الحقيقية
فغالبًا ما تحتاج إلى إجراء تعديلات متكررة على البيانات، سواء بإضافة بيانات جديدة أو تعديل الموجودة، وهو ما يتم بسهولة باستخدام SQL.

و ذلك يتم استخدام ال SQL بشكل رئيسي. 

اما ال CSV: يتم استخدامه بشكل مؤقت أو لنقل البيانات بين الأنظمة المختلفة، ولكنه ليس مثاليًا لتخزين البيانات بشكل دائم بسبب محدودياته في الأداء والتنظيم.

بايثون يوفر لك الأدوات للتعامل مع كليهما، مما يسهل التنقل بينهما حسب الحاجة في مشروعك.

انا حولت الي قاعدة بيانات بس ازي اقدر اقتح قاعد بيانات ده علي MySQL

  • 0
نشر
بتاريخ 1 ساعة قال Ail Ahmed:

انا حولت الي قاعدة بيانات بس ازي اقدر اقتح قاعد بيانات ده علي MySQL

  • اولا يجب عليك تحميل sqlite3 اولا و هذا عن طريق هذا الرابط و الضغط على sqlite-tools-win-x64-3460100.zip و بعد التنزيل يجب فك الضغط.
  • ثم ابحث عن Advanced system settings فى بحث الويندوز.
  • و اضغط على Environment Variables button
  • ثم ابحث عن Path فى ال System variables و اضغط New و اضف المسار للملف الذى فككت الضغط له
  • ثم اضغط ok

و بعد ذلك افتح ال terminal و حول المسار الى الفولدر الذى يحتوى على الملف. ثم نفذ هذا الامر:
 

sqlite3 database.db .dump > database.sql

قم بإنشاء قاعدة بيانات جديدة في MySQL لاستيراد البيانات إليها. يمكنك استخدام أداة مثل mysql من سطر الأوامر أو أي أداة إدارة قاعدة بيانات مثل phpMyAdmin أو MySQL Workbench.
و مثلا سننشئ قاعدة بيانات اسمها my_database:
 

CREATE DATABASE my_database;

الآن يمكنك استيراد ملف SQL إلى قاعدة بيانات MySQL.

mysql -u username -p my_database < database.sql

استبدل username باسم المستخدم الخاص بـ MySQL، وmy_database باسم قاعدة البيانات التي أنشأتها
و بعد ذلك يمكنك استعمال اى استبيان للتأكد من وجود البيانات

و هناك طريقة اخرى بدون الحاجة الى sqlite وهى استخدام مكتبات 
sqlalchemy و pandas
و عن طريق هذا الكود:

import pandas as pd
from sqlalchemy import create_engine

# تحميل ملف CSV
df = pd.read_csv("data.csv")

# إنشاء اتصال بقاعدة البيانات MySQL
engine = create_engine('mysql+pymysql://username:password@localhost/my_database')

# تحويل البيانات إلى SQL
df.to_sql("table_name", con=engine, if_exists="replace", index=False)

تأكد من استبدال username وpassword وlocalhost وmy_database بالقيم الخاصة بإعدادات MySQL الخاصة بك.

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...