سؤال

لدي ملف Excel مع مجموعة كبيرة من البيانات. الرسوم البيانية المدمجة المتوفرة في Excel هي ليس بما فيه الكفاية لتحليل هذه البيانات، لذلك أنا أفكر في استخدام بعض الأداة مثل اوكتاف أو R.

كنت أفكر في بعض الأسلوب لتحميل ملف Excel مباشرة إلى Octave أو R. لقد بحثت على الويب ووجدت أن العديد من الأشخاص قد نجحوا في الاستخدام عن طريق تصدير البيانات من Excel إلى ملف CSV.

السؤال: هل هناك طريقة مباشرة لتحميل ملف Excel في R أو Offave؟

هل كانت مفيدة؟

المحلول

نعم، إليك الطريقة:

يمكن لمستخدمي Windows استخدام ODBCConnectExcel في الحزمة Rodbc. يمكن أن يؤدي ذلك إلى تحديد الصفوف والأعمدة من أي من الأوراق في ملف جدول بيانات Excel (على الأقل من Excel 97-2003، اعتمادا على برامج تشغيل ODBC الخاصة بك: من خلال استدعاء إصدارات ODBCConnect مباشرة إلى Excel 3.0 يمكن قراءتها). سيقوم إصدار ODBCCONNECTEXCEL2007 بقراءة تنسيقات Excel 2007 بالإضافة إلى تلك السابقة (شريطة تثبيت برامج التشغيل: انظر Rodbc).

نصائح أخرى

خيار آخر (وحتى محمول) هو read.xls في ال gdata. صفقة. وهي متاحة عبر منصة حيث تعتمد على رمز PERL الأساسي لتحليل أو قراءة أو ... البيانات من ملف XLS في ملف CSV الذي يتم قراءته بعد ذلك. يتم توفير جميع حزم بيرل المطلوبة من قبل gdata..

يمكن بسهولة إنشاء حزمة أوكتاف باستخدام نفس الخدعة.

لقد تم بالفعل الرد على سؤالك. في حالة تساعد هذا على بعض القضية المستقبلية، وهو مورد مفيد حقا لهذه الأنواع من الأسئلة ص مستوريد البيانات / وثيقة التصدير والتي تغطي الكثير من API مفيد، وحزم، نصائح، إلخ للوصول إلى البيانات من بعض قواعد البيانات الشائعة وتنسيقات الملفات.

على سبيل المثال، هناك قسم Excel., ، والتي تغطي الكثير من الأرض في الإجابات المقدمة بالفعل.

نصيحة أخرى مفيدة هي تجربة نظام البحث عن المساعدة. على سبيل المثال، جرب أي مما يلي من R موجه:

> ??xls
> ??excel

تحرير: راجع للشغل، ??xls هو اختصار ل help.search("xls").

أسهل طريقة هي أن تكون بياناتك في شكل ملف CSV، ثم استخدم read.csv() لقراءة في البيانات. كن على دراية أنه عندما تقرأ في البيانات، فإن ص سوف تقرأ في سلاسل الأحرف وتحويلها إلى عوامل. يمكن أن تصبح هذه مشكلة عند محاولة الفرعي، والبيانات، إلخ.

بدلا من ذلك، إذا كنت ترغب في قراءة ذلك كملف Excel الأصلي، فيمكنك استخدام RODBC صفقة.

library('RODBC')
yourData <- sqlFetch(odbcConnectExcel("yourData.xls"), 
  sqtable = "nameOfSheet",
  na.strings = "NA", 
  as.is = TRUE)                    
odbcCloseAll()

الحل الأكثر بساطة لنظام التشغيل Windows هو استخدام Xlsreadwrite. صفقة. لا حاجة إلى بيرل، ما عليك سوى تثبيت حزمة ص ويمكنك قراءة وكتابة ملفات Excel إلى محتوى قلبك.

الآن يمكننا استخدامه read.csv أو readable.

علي سبيل المثال

df = read.csv("~/data/demo.csv",header = TRUE)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top