ایکس ام ال

آموزش فایل XML در زبان برنامه نویسی آر

اساطیر زبان

XML یک فرمت فایل است که با استفاده از متن ASCLL استاندارد؛ هم فرمت فایل و هم داده ها را روی شبکه جهانی وب، اینترنت و جاهای دیگر به اشتراک می گذارد. در واقع XML مخفف عبارت Extensible Markup Language (زبان نشانه گذاری توسعه پذیر) می باشد. مشابه باHTML این زبان شامل تگ های نشانه گذاری می باشد. اما برخلاف HTML که در آن تگ های نشانه گذاری ساختار صفحه را توصیف می کند؛ در xml تگ های نشانه گذاری، معنای داده هایی را که در بر می گیرد؛ توصیف می کند.

شما می توانید یک فایل xml را در آر با استفاده از بسته ی “XML” مطالعه کنید. این بسته می تواند با استفاده از فرمان زیر نصب بشود.

install.packages(“XML”)

داده های ورودی

یک فایل XML را با کپی کردن داده ی زیر در یک ویرایشگر متنی مانند نوتپد ایجاد کنید. فایل را با یک پسوند .xml ذخیره کنید و نوع فایل را به صورت ()all files انتخاب کنید.

<RECORDS>

<EMPLOYEE>

<ID>1</ID>

<NAME>Rick</NAME>

<SALARY>623.3</SALARY>

<STARTDATE>1/1/2012</STARTDATE>

<DEPT>IT</DEPT>

</EMPLOYEE>

<EMPLOYEE>

<ID>2</ID>

<NAME>Dan</NAME>

<SALARY>515.2</SALARY>

<STARTDATE>9/23/2013</STARTDATE>

<DEPT>Operations</DEPT>

</EMPLOYEE>

<EMPLOYEE>

<ID>3</ID>

<NAME>Michelle</NAME>

<SALARY>611</SALARY>

<STARTDATE>11/15/2014</STARTDATE>

<DEPT>IT</DEPT>

</EMPLOYEE>

<EMPLOYEE>

<ID>4</ID>

<NAME>Ryan</NAME>

<SALARY>729</SALARY>

<STARTDATE>5/11/2014</STARTDATE>

<DEPT>HR</DEPT>

</EMPLOYEE>

<EMPLOYEE>

<ID>5</ID>

<NAME>Gary</NAME>

<SALARY>843.25</SALARY>

<STARTDATE>3/27/2015</STARTDATE>

<DEPT>Finance</DEPT>

</EMPLOYEE>

<EMPLOYEE>

<ID>6</ID>

<NAME>Nina</NAME>

<SALARY>578</SALARY>

<STARTDATE>5/21/2013</STARTDATE>

<DEPT>IT</DEPT>

</EMPLOYEE>

<EMPLOYEE>

<ID>7</ID>

<NAME>Simon</NAME>

<SALARY>632.8</SALARY>

<STARTDATE>7/30/2013</STARTDATE>

<DEPT>Operations</DEPT>

</EMPLOYEE>

<EMPLOYEE>

<ID>8</ID>

<NAME>Guru</NAME>

<SALARY>722.5</SALARY>

<STARTDATE>6/17/2014</STARTDATE>

<DEPT>Finance</DEPT>

</EMPLOYEE>

</RECORDS>

خواندن فایل XML

فایل xml با استفاده از تابع ()xmlParse توسط آر خوانده می شود. این فایل به شکل یک لیست در R ذخیره می شود.

# Load the package required to read XML files.

library(“XML”)

# Also load the other required package.

library(“methods”)

# Give the input file name to the function.

result <- xmlParse(file = “input.xml”)

# Print the result.

print(result)

زمانی که کد بالا را اجرا می کنیم؛ نتیجه زیر به دست می آید:

۱

Rick

۶۲۳٫۳

۱/۱/۲۰۱۲

IT

۲

Dan

۵۱۵٫۲

۹/۲۳/۲۰۱۳

Operations

۳

Michelle

۶۱۱

۱۱/۱۵/۲۰۱۴

IT

۴

Ryan

۷۲۹

۵/۱۱/۲۰۱۴

HR

۵

Gary

۸۴۳٫۲۵

۳/۲۷/۲۰۱۵

Finance

۶

Nina

۵۷۸

۵/۲۱/۲۰۱۳

IT

۷

Simon

۶۳۲٫۸

۷/۳۰/۲۰۱۳

Operations

۸

Guru

۷۲۲٫۵

۶/۱۷/۲۰۱۴

Finance

دریافت تعداد گره های حاضر در فایل XML

# Load the packages required to read XML files.

library(“XML”)

library(“methods”)

# Give the input file name to the function.

result <- xmlParse(file = “input.xml”)

# Exract the root node form the xml file.

rootnode <- xmlRoot(result)

# Find number of nodes in the root.

rootsize <- xmlSize(rootnode)

# Print the result.

print(rootsize)

زمانی که کد بالا را جرا می کنیم؛ نتیجه زیر را به دست می آوریم:

output

[۱] ۸

جزئیات اولین گره

بیایید نگاهی به اولین فایل تجزیه شده بیندازیم. این فایل،این ایده را به ما می دهد که عناصر متفاوتی در گره سطح بالا وجود دارد.

# Load the packages required to read XML files.

library(“XML”)

library(“methods”)

# Give the input file name to the function.

result <- xmlParse(file = “input.xml”)

# Exract the root node form the xml file.

rootnode <- xmlRoot(result)

# Print the result.

print(rootnode[1])

زمانی که کد بالا را اجرا می کنیم؛ نتیجه زیر به دست می آید:

$EMPLOYEE

۱

Rick

۶۲۳٫۳

۱/۱/۲۰۱۲

IT

 

attr(,”class”)

[۱] “XMLInternalNodeList” “XMLNodeList”

دریافت عناصر متفاوت یک گره

# Load the packages required to read XML files.

library(“XML”)

library(“methods”)

# Give the input file name to the function.

result <- xmlParse(file = “input.xml”)

# Exract the root node form the xml file.

rootnode <- xmlRoot(result)

# Get the first element of the first node.

print(rootnode[[1]][[1]])

# Get the fifth element of the first node.

print(rootnode[[1]][[5]])

# Get the second element of the third node.

print(rootnode[[3]][[2]])

زمانی که کد بالا را اجرا می کنیم؛ نتیجه زیر به دست می آید:

۱

IT

Michelle

برای مدیریت مؤثر داده ها در فایل های بسیار بزرگ؛ داده های درون فایل xml را به عنوان یک فریم دیتا می خوانیم. فرآیند چارچوب داده برای تجزیه و تحلیل داده ها.

# Load the packages required to read XML files.

library(“XML”)

library(“methods”)

# Convert the input xml file to a data frame.

xmldataframe <- xmlToDataFrame(“input.xml”)

print(xmldataframe)

زمانی که کد بالا را اجرا می کنیم؛ نتیجه زیر به دست می آید:

ID NAME SALARY STARTDATE DEPT

۱ ۱ Rick 623.30 2012-01-01 IT

۲ ۲ Dan 515.20 2013-09-23 Operations

۳ ۳ Michelle 611.00 2014-11-15 IT

۴ ۴ Ryan 729.00 2014-05-11 HR

۵ NA Gary 843.25 2015-03-27 Finance

۶ ۶ Nina 578.00 2013-05-21 IT

۷ ۷ Simon 632.80 2013-07-30 Operations

۸ ۸ Guru 722.50 2014-06-17 Finance

از آنجایی که داده ها اکنون به عنوان یک فریم دیتا در دسترس می باشد؛ می توانیم تابع مربوط به چارچوب داده ها را برای خواندن و به کار بردن فایل ها استفاده کنیم.

تفاوت پک های حرفه ای ما با آموزشهای رایگان: بطور خلاصه از زمین تا آسمان! 1-پکها، جدیدترین نسخه نرم افزارها را آموزش می دهند با قابلیت های بسیار بیشتر. 2-پکها توسط متخصص آن نرم افزار، به صورت کاملا پروژه محور و با حل چالش هایی که در مسیر کار عملی و حرفه ای با آن روبرو می شوید تهیه شده اند و بعد از استفاده، کاملا برای بازار کار آماده اید! 3- متد این پکها کاملا کار شده و تا ماهها، در ذهن تان ماندگارند و یادگیری بسیار سریعتر و کاملتری خواهید داشت. آموزشهای رایگان فقط دستورات نرم افزارها را (آنهم ناقص) بیان می کنند و تازه برای ورود به بازار باید ماهها تجربه عملی هم کسب کنید !!

turned_in

چرب زبان

با این اپلیکیشن ساده، هر زبانی رو فقط با 5 دقیقه در روز، توی 80 روز مثل بلبل حرف بزن! بهترین متد روز، تقویت حافظه، آموزش تصویری. یادگیری زبان کلید یادگیری هر مهارتی در قرن 21 !


حتما بخوانید!

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست