ฉันจะแปลงเส้นทางไฟล์ Windows Explorer เป็นรูปแบบเส้นทางไฟล์ที่ต้องการใน R ได้อย่างไร


2

ฉันให้มีการแปลงของฉันด้วยตนเองเพื่อback slashes front slashesมีวิธีที่รวดเร็วในการทำสิ่งนี้ผ่านฟังก์ชั่นRหรือไม่?

ตัวอย่างคัดลอกมาจาก Windows Explorer:

G:\Compensation Audits_Reports\Step Audit\Steps off Step.accdb

ตัวอย่างข้อมูล R:

testdb<-file.path("G:/Compensation Audits_Reports/Step Audit/Steps off Step.accdb")

บางทีฉัน shoudl ได้ถอดตัวอย่างเพื่อให้ดูทั่วไปมากขึ้น?
daniellopez46

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

แต่ฉันจะปิดหัวข้อได้อย่างไรเมื่อสิ่งที่ฉันขอเป็นฟังก์ชั่นไม่ใช่คนที่จะแก้ไขโค้ดของฉัน? มันเหมือนกับโพสต์อื่น ๆ ที่มีอยู่ที่นั่นและพวกเขาไม่ได้ปิด ตัวอย่าง: 1. Example1 2. Example2
daniellopez46

1
ฉันคิดว่าในกรณีนี้คำถามควรจะเปิดใหม่ดังนั้นฉันทำอย่างนั้น
nhinkle

ดูstackoverflow.com/a/8425591/903061สำหรับวิธีการแก้ไขที่เรียบร้อย
Gregor

คำตอบ:


1

ใช้subฟังก์ชั่นที่คุณสามารถทำได้

sub("\\\\","/","G:\\Compensation\\Step Audit\\Steps off Step.accdb")

@Silva ขอบคุณสำหรับคำแนะนำการแก้ไขก่อนหน้านี้ ฉันคัดลอกและวางสิ่งที่คุณเขียนและได้รับ: ข้อผิดพลาด: '\ C' เป็นการหลบหนีที่ไม่รู้จักในสตริงอักขระโดยเริ่มต้น "G: \ C"
daniellopez46

3

ดูเหมือนว่านี่เป็นจริงเป็นไปไม่ได้เพราะเส้นทางของหน้าต่างนั้นถูกเข้าใจโดย R ในลักษณะที่ทำให้"\"ตัวละครตัวต่อไปหลบหนี สิ่งที่ต้องการ: "foo\bar"ถูกมองว่าเป็นตัวละครบางตัว ( foo) ตามด้วย\bตัวละครพิเศษตามด้วยตัวละครอื่น ๆ ตัวอักษรปกติ ( ar)

ในการแปลงซิงเกิ้ล"\"ให้กับ"/"คุณก่อนอื่นคุณต้องหลบหนีด้วยแบ็กสแลชซึ่งจะมีลักษณะดังนี้: "foo\\bar"ซึ่งโดยส่วนใหญ่แล้วจะไร้สาระเพราะคุณสามารถเปลี่ยนแบ็กสแลชเป็นสแลชได้ด้วยตนเอง

สิ่งเดียวที่อาจช่วยได้คือโพสต์นี้ในStackOverflowให้รหัสสำหรับฟังก์ชั่นการจับข้อมูลเข้าสู่คอนโซลโดยตรงแล้วเปลี่ยนมัน ด้วยวิธีนี้คุณอาจได้รับเส้นทาง Rfriendly ผ่านการคัดลอกวาง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.