Sas: วิธีนำเข้าช่วงเฉพาะจาก excel


คุณสามารถใช้คำสั่ง PROC IMPORT พร้อมตัวเลือก RANGE เพื่อนำเข้าช่วงของเซลล์ที่ระบุจากไฟล์ Excel ไปยัง SAS

เมื่อต้องการทำเช่นนี้ คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้:

 /*import data from Excel file called basketball_data.xlsx*/
proc import out =my_data
    datafile ="/home/u13181/basketball_data.xlsx"
    dbms =xlsx
    replace ;
    getnames =YES;
    range ="Sheet1$C4:E11";
run ;

นี่คือสิ่งที่แต่ละบรรทัดทำ:

  • out : ชื่อที่จะกำหนดให้กับชุดข้อมูลเมื่อนำเข้าสู่ SAS
  • datafile : ตำแหน่งของไฟล์ Excel ที่จะนำเข้า
  • dmbs : รูปแบบของไฟล์ที่กำลังนำเข้า
  • แทนที่ : แทนที่ไฟล์หากมีอยู่แล้ว
  • getnames : ใช้บรรทัดแรกเป็นชื่อตัวแปร (ตั้งค่าเป็น NO หากบรรทัดแรกไม่มีชื่อตัวแปร)
  • range : ช่วงของเซลล์ที่จะนำเข้า

โปรดทราบว่าตัวอย่างนี้จะนำเข้าเซลล์ในช่วง C4:E11 ของ Sheet1 จากไฟล์ Excel ชื่อ Basketball_data.xlsx

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติกับไฟล์ Excel ต่อไปนี้ชื่อ Basketball_data.xlsx :

ตัวอย่างที่ 1: นำเข้าข้อมูลจากไฟล์ Excel ไปยัง SAS โดยไม่ระบุช่วง

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อนำเข้าไฟล์ Excel ไปยังชุดข้อมูล SAS ชื่อ my_data โดยไม่ต้องระบุช่วงของเซลล์เฉพาะที่จะนำเข้า:

 /*import data from Excel file called basketball_data.xlsx*/
proc import out =my_data
    datafile ="/home/u13181/basketball_data.xlsx"
    dbms =xlsx
    replace ;
    getnames =YES;
run ;

/*view dataset*/
proc print data =my_data; 

เนื่องจากเราไม่ได้ใช้คำสั่ง range เพื่อระบุช่วงของเซลล์ที่จะนำเข้า SAS จึงนำเข้าเซลล์ทั้งหมดจนกว่าจะพบข้อมูลในชีต

ตัวอย่างที่ 2: นำเข้าข้อมูลจากไฟล์ Excel ไปยัง SAS และระบุช่วง

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อนำเข้าไฟล์ Excel ไปยังชุดข้อมูล SAS ชื่อ my_data และใช้ตัวเลือก ช่วง เพื่อนำเข้าเฉพาะช่วงของเซลล์ที่ระบุ:

 /*import specific cells from Excel file called basketball_data.xlsx*/
proc import out =my_data
    datafile ="/home/u13181/basketball_data.xlsx"
    dbms =xlsx
    replace ;
    getnames =YES;
range ="Sheet1$C4:E11";
run ;

/*view dataset*/
proc print data =my_data; 

เนื่องจากเราใช้คำสั่ง range เพื่อระบุช่วงของเซลล์ที่จะนำเข้า SAS จึงนำเข้าเฉพาะเซลล์ในช่วงนั้นจากชีต

โปรดทราบว่าคุณยังสามารถส่งช่วงที่มีชื่อไปยังคำสั่ง range ได้ด้วย

ตัวอย่างเช่น หากช่วงของเซลล์ C4:E11 มีช่วงชื่อ my_range คุณสามารถใช้อาร์กิวเมนต์ range=”my_range” ในคำสั่ง PROC IMPORT แทนได้

หมายเหตุ : คุณสามารถค้นหาเอกสารฉบับสมบูรณ์สำหรับคำสั่ง PROC IMPORT ใน SAS ได้ที่นี่

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน SAS:

วิธีนำเข้าไฟล์ CSV ไปยัง SAS
วิธีส่งออกข้อมูลจาก SAS ไปยังไฟล์ CSV
วิธีส่งออกข้อมูลจาก SAS ไปยัง Excel

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *