Apa adalah cara umum untuk mengimpor data pribadi ke Google Colaboratory notebook? Apakah mungkin untuk impor non-publik Google sheet? Anda dapat't dibaca dari sistem file. Pengantar docs link ke panduan menggunakan BigQuerytapi sepertinya itu sedikit banyak....
Resmi contoh notebook yang menunjukkan setempat file upload/download dan integrasi dengan Drive dan lembar tersedia di sini: https://colab.research.google.com/notebooks/io.ipynb
Cara paling sederhana untuk berbagi file adalah untuk me-mount Google Drive anda.
Untuk melakukan ini, jalankan perintah berikut dalam kode cell:
from google.colab import drive
drive.mount('/content/drive')
Setelah itu, anda file Drive yang akan dipasang dan anda dapat mengaksesnya dengan browser file di panel samping.
Berikut ini's lengkap contoh notebook
Cara sederhana untuk mengimpor data dari googledrive - lakukan ini menyelamatkan orang-orang waktu (don't tahu mengapa google hanya doesn't daftar ini langkah demi langkah secara eksplisit).
MENGINSTAL DAN MENGOTENTIKASI PYDRIVE
!pip install -U -q PyDrive ## you will have install for every colab session
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from google.colab import auth
from oauth2client.client import GoogleCredentials
# 1. Authenticate and create the PyDrive client.
auth.authenticate_user()
gauth = GoogleAuth()
gauth.credentials = GoogleCredentials.get_application_default()
drive = GoogleDrive(gauth)
Meng-UPLOAD
jika anda perlu untuk meng-upload data dari drive lokal:
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])))
melaksanakan dan ini akan menampilkan sebuah tombol pilih file - menemukan anda meng-upload file - klik open
Setelah meng-upload, maka akan muncul:
sample_file.json(text/plain) - 11733 bytes, last modified: x/xx/2018 - %100 done
User uploaded file "sample_file.json" with length 11733 bytes
MEMBUAT FILE UNTUK NOTEBOOK
Jika file data anda sudah di gdrive, anda dapat melewatkan langkah ini.
Sekarang di google drive anda. Mencari file di google drive anda dan klik kanan. Klik get 'shareable link.' Anda akan mendapatkan sebuah jendela dengan:
https://drive.google.com/open?id=29PGh8XCts3mlMP6zRphvnIcbv27boawn
Copy - '29PGh8XCts3mlMP6zRphvnIcbv27boawn' - bahwa adalah file ID.
Di notebook anda:
json_import = drive.CreateFile({'id':'29PGh8XCts3mlMP6zRphvnIcbv27boawn'})
json_import.GetContentFile('sample.json') - 'sample.json' is the file name that will be accessible in the notebook.
MENGIMPOR DATA KE NOTEBOOK
Untuk mengimpor data yang anda upload ke notebook (file json dalam contoh ini - bagaimana anda beban akan tergantung pada file/data jenis - .txt,.csv dll. ):
sample_uploaded_data = json.load(open('sample.json'))
Sekarang anda dapat mencetak untuk melihat data yang ada:
print(sample_uploaded_data)
langkah 1 - memasang Google Drive untuk Collaboratory
from google.colab import drive
drive.mount('/content/gdrive')
langkah 2 - Sekarang anda akan melihat file Google Drive di sebelah kiri (file explorer). Klik kanan pada file yang anda butuhkan untuk impor dan pilih çopy jalan. Kemudian impor seperti biasa di panda, dengan menggunakan ini disalin jalan.
import pandas as pd
df=pd.read_csv('gdrive/My Drive/data.csv')
Selesai!
Hal ini memungkinkan anda untuk meng-upload file anda melalui Google Drive.
Jalankan kode di bawah ini (ini di suatu tempat sebelumnya tapi aku bisa't menemukan sumber lagi - kredit untuk siapa pun yang menulis ini!):
!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}
Klik pada link pertama yang muncul yang akan meminta anda untuk masuk ke Google, setelah itu yang lain akan muncul yang akan meminta izin untuk akses ke Google Drive anda.
Kemudian, jalankan ini yang menciptakan sebuah direktori bernama 'mobil', dan link Google Drive anda untuk itu:
!mkdir -p drive
!google-drive-ocamlfuse drive
Jika anda melakukan !ls
sekarang, akan ada direktori drive, dan jika anda melakukan !ls drive
anda dapat melihat semua isi dari akun Google Drive.
Jadi misalnya, jika saya menyimpan file yang bernama abc.txt
dalam sebuah folder bernama ColabNotebooks
di Google Drive, sekarang saya bisa mengaksesnya melalui jalan drive/ColabNotebooks/abc.txt
Cara paling sederhana I've dibuat adalah :
Cepat dan mudah impor dari Dropbox:
!pip install dropbox
import dropbox
access_token = 'YOUR_ACCESS_TOKEN_HERE' # https://www.dropbox.com/developers/apps
dbx = dropbox.Dropbox(access_token)
# response = dbx.files_list_folder("")
metadata, res = dbx.files_download('/dataframe.pickle2')
with open('dataframe.pickle2', "wb") as f:
f.write(res.content)
Solusi yang paling sederhana yang saya telah menemukan sejauh ini yang bekerja dengan sempurna untuk kecil untuk ukuran pertengahan CSV file:
panda.read_csv(URL)
Hal ini mungkin atau mungkin tidak bekerja untuk membaca file baris demi baris teks atau file biner.
Anda juga dapat menggunakan implementasi di google.colab dan PyDrive di https://github.com/ruelj2/Google_drive yang membuatnya jauh lebih mudah.
!pip install - U - q PyDrive
import os
os.chdir('/content/')
!git clone https://github.com/ruelj2/Google_drive.git
from Google_drive.handle import Google_drive
Gd = Google_drive()
Kemudian, jika anda ingin memuat semua file dalam sebuah direktori Google Drive, hanya
Gd.load_all(local_dir, drive_dir_ID, force=False)
Atau hanya file tertentu dengan
Gd.load_file(local_dir, file_ID)
Seperti yang disebutkan oleh @Vivek Permana, saya juga upload file saya di colaboratory dashboard di bawah "File" bagian.
Hanya mengambil catatan dari mana file yang telah di-upload. Bagi saya,
train_data = pd.read_csv('/fileName.csv')
bekerja.
Hal itu telah diselesaikan, menemukan rincian di sini dan silakan gunakan fungsi berikut: https://stackoverflow.com/questions/47212852/how-to-import-and-read-a-shelve-or-numpy-file-in-google-colaboratory/49467113#49467113
from google.colab import files
import zipfile, io, os
def read_dir_file(case_f):
# author: yasser mustafa, 21 March 2018
# case_f = 0 for uploading one File and case_f = 1 for uploading one Zipped Directory
uploaded = files.upload() # to upload a Full Directory, please Zip it first (use WinZip)
for fn in uploaded.keys():
name = fn #.encode('utf-8')
#print('\nfile after encode', name)
#name = io.BytesIO(uploaded[name])
if case_f == 0: # case of uploading 'One File only'
print('\n file name: ', name)
return name
else: # case of uploading a directory and its subdirectories and files
zfile = zipfile.ZipFile(name, 'r') # unzip the directory
zfile.extractall()
for d in zfile.namelist(): # d = directory
print('\n main directory name: ', d)
return d
print('Done!')
Berikut adalah salah satu cara untuk mengimpor file dari google drive untuk notebook.
!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
katakanlah anda dataset file di Colab_Notebooks folder dan nama db.csv
import pandas as pd
dataset=pd.read_csv("drive/Colab_Notebooks/db.csv")
Saya berharap hal ini membantu
jika anda ingin melakukan hal ini tanpa kode itu's cukup mudah. Zip folder anda dalam kasus saya itu adalah
dataset.zip
kemudian di Colab klik kanan pada folder di mana anda ingin menempatkan file ini dan tekan meng-Upload dan meng-upload file zip ini. Setelah itu menulis ini perintah Linux.
!unzip <your_zip_file_name>
anda dapat melihat data anda upload berhasil.