colab 노트북 (**. ipnb)에서 파일을 읽는 방법은 여러 가지가 있습니다.
- 런타임의 가상 머신에 Google 드라이브를 마운트합니다. 여기 & 여기
- google.colab.files.upload () 사용. 가장 쉬운 해결책
- 은 Using 네이티브 REST API를 ;
- PyDrive 와 같은 API 주위에 래퍼 사용
방법 1과 2 가 나를 위해 일했습니다 . 나머지는 알아낼 수 없었습니다. 다른 사람들이 위의 게시물에서 시도한 것처럼 누구나 할 수 있다면 우아한 답변을 작성하십시오. 미리 감사드립니다.!
첫 번째 방법 :
Google 드라이브를 마운트 할 수 없어서이 라이브러리를 설치했습니다.
!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}
설치 및 인증 프로세스가 완료되면 먼저 드라이브를 마운트합니다.
!mkdir -p drive
!google-drive-ocamlfuse drive
설치 후 Google 드라이브를 마운트 할 수 있었고 Google 드라이브의 모든 항목은 / content / drive 에서 시작됩니다.
!ls /content/drive/ML/../../../../path_to_your_folder/
이제 path_to_your_folder
위의 경로를 사용하여 폴더에서 pandas로 파일을 간단히 읽을 수 있습니다 .
import pandas as pd
df = pd.read_json('drive/ML/../../../../path_to_your_folder/file.json')
df.head(5)
/../.를 사용하지 않고받은 절대 경로를 사용한다고 가정합니다.
두 번째 방법 :
읽기를 원하는 파일이 현재 작업 디렉토리에 있으면 편리합니다.
로컬 파일 시스템에서 파일을 업로드해야하는 경우 아래 코드를 사용할 수 있습니다. 그렇지 않으면 피하십시오.!
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])))
Google 드라이브의 폴더 계층 아래에 있다고 가정합니다.
/content/drive/ML/../../../../path_to_your_folder/
그런 다음 pandas에로드하려면 아래 코드가 필요합니다.
import pandas as pd
import io
df = pd.read_json(io.StringIO(uploaded['file.json'].decode('utf-8')))
df