ไม่สามารถอ่านพิกัดจากไฟล์ CSV
ฉันกำลังพยายามนำเข้าไฟล์ CSV ที่มีแอตทริบิวต์ที่ระบุตำแหน่งทางภูมิศาสตร์ แต่ไม่รู้จักรูปแบบ:
มีวิธีจดจำโดยอัตโนมัติหรือไม่?
แก้ไข: ฉันคิดว่าสิ่งที่ฉันต้องการคือตัวแปลงแบทช์เพื่อแทนที่ (ตัวอย่างเช่น) 9.8N /42.8W คูณ 9.8 / -42.8 ฉันกำลังมองหาเครื่องมือนั้น
IDT 2: นี่คือตัวอย่าง csv https://gofile.io/d/8QsYwb
คำตอบ
ลองใช้วิธีการเดียวกันกับ"Geometry by expression"ที่อธิบายไว้ในคำตอบ @Luis เปเรซ อย่างไรก็ตามปรับใช้นิพจน์ที่แตกต่างกันเล็กน้อย
make_point(
if(regexp_match("Longitude (deg.)", 'W'),
-regexp_substr("Longitude (deg.)" ,'[^A-Z]+'),
regexp_substr("Longitude (deg.)" ,'[^A-Z]+')
),
if(regexp_match("Latitude (deg.)",'S'),
-regexp_substr("Latitude (deg.)" ,'[^A-Z]+'),
regexp_substr("Latitude (deg.)" ,'[^A-Z]+')
)
)
และได้รับผลลัพธ์
ใช้transform()เป็นที่อนุญาต
อ้างอิง:
- เอกสาร»คู่มือผู้ใช้ QGIS » 23.1.15.35. เรขาคณิตตามนิพจน์
ที่ผ่านมาฉันได้แก้ไขปัญหาดังกล่าวใน Excel แล้ว เพิ่มคอลัมน์กรองสิ่งที่ติดแท็ก S หรือ W และคำนวณ -1 ในคอลัมน์นั้นและเติมส่วนที่เหลือด้วย 1 ค้นหาการแทนที่เพื่อรับตัวละคร NSEW ทั้งหมด จากนั้นคูณค่าคอลัมน์ด้วย 1 หรือ -1