正如你在Spark中運行這樣,一種方法是將Pandas DataFrame轉換爲Spark DataFrame,然後將其保存到S3。
下面的代碼段創建pdf
熊貓數據幀和把它轉換成df
火花數據幀。
import numpy as np
import pandas as pd
# Create Pandas DataFrame
d = {'one' : pd.Series([1., 2., 3.], index=['a', 'b', 'c']),
'two' : pd.Series([1., 2., 3., 4.], index=['a', 'b', 'c', 'd'])}
pdf = pd.DataFrame(d)
# Convert Pandas DataFrame to Spark DataFrame
df = spark.createDataFrame(pdf)
df.printSchema()
要驗證,我們也可以打印出下面輸出的Spark DataFrame的模式。現在
root
|-- one: double (nullable = true)
|-- two: double (nullable = true)
,這是一個Spark數據框,你可以使用spark-csv
包來保存該文件下面的例子。
# Save Spark DataFrame to S3
df.write.format('com.databricks.spark.csv').options(header='true').save('123.csv')
也許這樣的事情會令你有一個良好的開端:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_csv.html其寫入緩衝器將使用http://boto3.readthedocs.io/en/latest/reference/services/s3.html#S3.Client.put_object。請注意,您不必將其寫入硬盤驅動器即可寫入s3。實際上'to_csv()'和'put_object'似乎都支持非常高效的緩衝區。 –