นโยบายการจัดการความรู้ มหาวิทยาลัยสงขลานครินทร์ 1.ให้ใช้เครื่องมือการจัดการความรู้ผลักดัน คุณภาพคน และกระบวนทำงาน 2.ส่งเสริมการแลกเปลี่ยนประสบการณ์การทำงาน จากหน้างาน 3.ส่งเสริมให้มีเวทีเรียนรู้ร่วมกัน

Our Shangri-La
Ico64
Kittisakdi Choomalee

ภาควิชาเวชศาสตร์ชุมชน คณะแพทยศาสตร์ มหาวิทยาลัยสงขลานครินทร์
เครือข่าย
สมาชิก · ติดตาม: 0 · ผู้ติดตาม: 16

อ่าน: 800
ความเห็น: 0

ก้าวย่างทางเดิน ลืมเลือนคืนวัน ดั้นด้นไป: เดินไปเดินมา ๓ วัน กับ R # ๑๓ [C]

เงื่อนไขที่ทำให้ต้องเดินไปเดินมา

บันทึกที่เกี่ยวข้อง

 

ข้อเท็จจริงเกี่ยวกับข้อมูลที่ใช้เป็นตัวอย่างในบันทึกชุดนี้คือ ข้อมูลทั้งหมดเป็นข้อมูลที่ถูกสร้างขึ้นมาแบบสุ่ม โดยเครื่องคอมพิวเตอร์ ดังนั้นข้อมูลที่ใช้เป็นตัวอย่างนี้จึงไม่ตรง/ เหมือนกับข้อมูลในชีวิตจริง

 

ความเดิมตอนที่แล้ว

ตอนที่แล้วเราจัดการให้ค่า factor ที่อยู่ในแนวเส้นทแยงมุมมาอยู่ในแถวเดียวกันแล้วคือแถวที่ ๑ และเราดึงข้อมูล factor ในแถวที่ ๑ ออกมาโดยการระบุตำแหน่งของข้อมูลใน matrix นั่นคือตำแหน่งของข้อมูลคือข้อมูลทุกค่า (ทุกสดมภ์) ในแถวที่ ๑ หรือใช้บรรทัดคำสั่ง matrix(tgnhdl[lipiddata$tgrow, lipiddata$nhdlcol],nrow=101, ncol=100)[1,]

 

เราเก็บค่าที่ได้ไว้ในตัวแปร denofactor ในกรอบข้อมูล lipiddata

 

ความต่อ

 

เราใช้วิธีการแบบผสมระหว่างลูกทุ่งและลูกกรุงในการจัดการดึงข้อมูล factor จากตารางความสัมพันธ์ระหว่างค่า TG กับ Non HDL lipid โดยใช้ข้อมูล TG และ Non HDL จากผู้ป่วยแต่ละคน

 

แต่วิธีการดังกล่าวมีข้อจำกัดอยู่ที่หากเรามีข้อมูลจำนวนมาก (มากกว่า ๔๐,๐๐๐ ระเบียน) วิธีการข้างต้นก็ไม่สามารถที่จะรองรับได้ เนื่องจากถึงจุดจำกัดของ matrix ยกเว้นเราจะใช้การแบ่งข้อมูลออกเป็นส่วน ๆ แล้วดำเนินการดังวิธีการในบันทึกที่ผ่านมาทีละส่วน หลังจากนั้นก็ให้รวมข้อมูลทุกส่วนเข้าด้วยกัน

 

ถามว่าวิธีการนี้ยุ่งยากไหม คงตอบว่าไม่ยุ่งยากครับ ขอเพียงแต่ให้เราเข้าใจขั้นตอนของการทำ เข้าใจว่าแต่ละขั้นตอนที่เราทำนั้นทำเพื่อวัตถุประสงค์อะไร

 

นอกจากนี้ข้อดีของการใช้บรรทัดคำสั่งทำงานก็คือ เราสามารถทำซ้ำสิ่งเดียวกันนี้ได้ง่าย เพียงแต่แก้ไขเปลี่ยนแปลงส่วนที่ต้องแก้ไข แล้วสั่งให้ R ดำเนินการได้เลย

 

เช่นหากเรามีข้อมูลจำนวนมาก สมมติว่า ๑ แสนระเบียน ถ้าเราทำด้วยวิธีการข้างต้นแล้ว เราต้องแบ่งข้อมูลออกเป็น ๓ ส่วน เพื่อให้แต่ละส่วนของข้อมูลมีจำนวนไม่เกิน ๔๐,๐๐๐ ระเบียน สมมติว่า เก็บข้อมูลแต่ละส่วนไว้ในกรอบข้อมูลชื่อ lipid1 lipid2 และ lipid3 ตามลำดับ

 

สิ่งที่เราแก้ไขในบรรทัดคำสั่งก็คือชื่อของกรอบข้อมูลที่มีข้อมูลแต่ละชุดนั่นเอง รวมถึงจำนวนแถวละสดมภ์ของ matrix ผลลัพธ์ ส่วนอื่น ๆ ของบรรทัดคำสั่งยังคงเมือนเดิม

 

สรุปบรรทัดคำสั่งที่ใช้ในการจัดการข้อมูลแบบลูกผสมไทยลูกทุ่งกับกรุงเทพ

 

สมมติว่า

ข้อมูลผู้ป่วยก่อนที่จะนำเข้าสู่โปรแกรม R นั้นถูกเก็บไว้ในแฟ้มข้อมูลชนิด csv ชื่อ lipid.csv ข้อมูลตาราง factor ถูกเก็บอยูในแฟ้มข้อมูล tgnhdl.csv

 

กรอบข้อมูลและ matrix ที่ใช้เก็บข้อมูล lipid และ tgnhdl เมื่อนำเข้า R แล้วชื่อ lpid และ tgnhdl ตามลำดับ

 

> lipid <- read.csv("lipid.csv")
> tgnhdl <- data.matrix(read.csv("tgnhdl_table2.csv"))
> lipid$tgrow <- cut(lipid$tg,b=c(129, 159, 189, 219, 249, 279, 309, 339, 369, 399, 429, 459, 489, 519, 549, 579, 609, 639, 669, 699, 729, 759, 789, 819, 849, 879, 909, 939, 969, 999, 1029), lab=c(1:30))
> lipid$nhdlcol <- cut(lip$nhdl, b=c(99, 149, 199, 249, 299, 349, 400), lab=c(1:6))
> lipid$denofactor <- matrix(tgnhdl[lipid$tgrow, lipid$nhdlcol], nrow=101, ncol=100)[1,]

 

เห็นมั๊ยครับว่า ที่เราพูดกันมายืดยาวหลายบันทึกนั้น สรุปสุดท้ายเราก็ได้บรรทัดคำสั่งสำหรับจัดการข้อมูลให้ได้ตามที่เราต้องการแค่ไม่กี่บรรทัดคำสั่งเท่านั้นเอง

 

ข้อสังเกต:

มีฟังก์ชันที่เพิ่มขึ้นมาในตอนท้ายคือ data.matrix() เพื่อเปลี่ยนจากกรอบข้อมูล (data frame) ให้เป็น matrix เนื่องจากผลลัพธ์ที่ได้จากการใช้ฟังก์ชัน read.csv() นั้นจะให้ผลลัพธ์อยู่ในรูปของกรอบข้อมูล

 

อิอิอิ

 

เราเอง

 

เพลง: Evidence Of Love
ศิลปิน: Air Supply

 

When I look for the love in your eyes
You turn away
And there's nothing as loud as the words
That we never say
Look at us now
Standing on the edge again
It's not too late to try again
I need some

.......

 

หมวดหมู่บันทึก: เรื่องทั่วไป
สัญญาอนุญาต: ซีซี: แสดงที่มา-ไม่ใช้เพื่อการค้า-อนุญาตแบบเดียวกัน Cc-by-nc-sa
สร้าง: 06 มิถุนายน 2557 17:54 แก้ไข: 28 เมษายน 2563 17:31 [ แจ้งไม่เหมาะสม ]
ดอกไม้
สมาชิกที่ให้กำลังใจ: Ico24 คนธรรมดา, Ico24 ทดแทน, และ Ico24 ใยมะพร้าวน้องใยไหม.
สมาชิกที่ให้กำลังใจ
 
Facebook
Twitter
Google

บันทึกอื่นๆ

ความเห็น

ไม่มีความเห็น
คุณต้องทำการเข้าระบบก่อนแสดงความเห็น