Có nhiều cách để đọc các tệp trong sổ ghi chép colab của bạn (**. Ipnb), một số cách là:
- Gắn Google Drive của bạn vào máy ảo của thời gian chạy. đây &, đây
- Sử dụng google.colab.files.upload (). giải pháp đơn giản nhất
- Sử dụng API REST gốc ;
- Sử dụng trình bao bọc xung quanh API chẳng hạn như PyDrive
Phương pháp 1 và 2 có hiệu quả với tôi , phần còn lại tôi không thể tìm ra. Nếu bất cứ ai có thể, như những người khác đã cố gắng trong bài đăng trên, vui lòng viết một câu trả lời thanh lịch. cảm ơn trước.!
Phương pháp đầu tiên:
Tôi không thể gắn ổ đĩa google của mình, vì vậy tôi đã cài đặt các thư viện này
# Install a Drive FUSE wrapper.
# https://github.com/astrada/google-drive-ocamlfuse
!apt-get install -y -qq software-properties-common python-software-properties module-init-tools
!add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null
!apt-get update -qq 2>&1 > /dev/null
!apt-get -y install -qq google-drive-ocamlfuse fuse
from google.colab import auth
auth.authenticate_user()
from oauth2client.client import GoogleCredentials
creds = GoogleCredentials.get_application_default()
import getpass
!google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL
vcode = getpass.getpass()
!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}
Sau khi quá trình cài đặt & ủy quyền hoàn tất, trước tiên bạn gắn ổ đĩa của mình.
!mkdir -p drive
!google-drive-ocamlfuse drive
Sau khi cài đặt, tôi đã có thể mount google drive, mọi thứ trong google drive của bạn đều bắt đầu từ / content / drive
!ls /content/drive/ML/../../../../path_to_your_folder/
Bây giờ bạn có thể chỉ cần đọc tệp từ path_to_your_folder
thư mục vào gấu trúc bằng đường dẫn trên.
import pandas as pd
df = pd.read_json('drive/ML/../../../../path_to_your_folder/file.json')
df.head(5)
bạn giả sử bạn sử dụng đường dẫn tuyệt đối mà bạn đã nhận được và không sử dụng /../ ..
Phương pháp thứ hai :
Điều này thật tiện lợi, nếu tệp của bạn mà bạn muốn đọc có trong thư mục làm việc hiện tại.
Nếu bạn cần tải lên bất kỳ tệp nào từ hệ thống tệp cục bộ của mình, bạn có thể sử dụng mã bên dưới, nếu không, chỉ cần tránh nó.!
from google.colab import files
uploaded = files.upload()
for fn in uploaded.keys():
print('User uploaded file "{name}" with length {length} bytes'.format(
name=fn, length=len(uploaded[fn])))
giả sử bạn có bên dưới phân cấp thư mục trong google drive của mình:
/content/drive/ML/../../../../path_to_your_folder/
Sau đó, bạn chỉ cần mã bên dưới để tải vào gấu trúc.
import pandas as pd
import io
df = pd.read_json(io.StringIO(uploaded['file.json'].decode('utf-8')))
df