我正在尝试使用google datalab,但无法将csv很好地写入GCS(Google云存储)。
import pandas as pd
from pandas import DataFrame
from io import BytesIO
df = DataFrame({"a":[1,2],"b":1})
print(df)
>> | a | b
>> 0 | 1 | 1
>> 1 | 2 | 1
在stackoverflow中,我找到了此命令
%storage write --object gs://my-bucket/data/test.csv --variable df
但是,如果我使用此命令,则无法很好地读取数据。因为数据不是用逗号分隔(用空格分隔)。它包括索引。
%storage read --object gs://my-bucket/data/test.csv --variable test_file
df2 = pd.read_csv(BytesIO(test_file))
print(df2)
>> | a b
>> 0 | 0 1 1
>> 1 | 1 2 1
我想写成没有索引的csv。(例如df.to_csv('test_file.csv',index=False)
我该怎么办?请指教。
答案 0 :(得分:3)
您可以尝试以下吗?
import pandas as pd
from io import BytesIO
df = pd.DataFrame({"a":[1,2],"b":1})
df.to_csv('text.csv', index = False)
!gsutil cp 'text.csv' 'gs://path-to-your-bucket/test.csv'
%gcs read --object gs://path-to-your-bucket/test.csv --variable test_file
df2 = pd.read_csv(BytesIO(test_file))