Không thể đọc tọa độ từ tệp CSV
Tôi đang cố gắng nhập tệp CSV có thuộc tính định vị địa lý, nhưng định dạng không được nhận dạng:
Có cách nào để tự động nhận dạng nó không?
CHỈNH SỬA: Tôi nghĩ những gì tôi cần là một bộ chuyển đổi hàng loạt để thay thế (ví dụ) 9,8N /42,8W bằng 9,8 / -42,8. Tôi đang tìm kiếm công cụ đó.
IDT 2: đây là mẫu csv https://gofile.io/d/8QsYwb
Trả lời
Hãy thử cách tiếp cận tương tự với "Geometry by expression"được mô tả trong câu trả lời của @Luis Perez . Tuy nhiên, hãy triển khai một biểu thức khác một chút
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]+')
)
)
Và nhận được đầu ra
Sử dụng transform()là được phép.
Người giới thiệu:
- Tài liệu »Hướng dẫn Sử dụng QGIS» 23.1.15.35. Hình học bằng biểu thức
Trước đây, tôi đã khắc phục các sự cố như vậy trong Excel. Thêm một cột, lọc bất kỳ thứ gì được gắn thẻ S hoặc W và tính -1 trong cột đó và điền phần còn lại bằng 1. Tìm thay thế để nhận tất cả các ký tự NSEW. Sau đó, nhân các giá trị cột với 1 hoặc -1.