私はスパークにはとても新しいと言って序文にしたいと思います。私はスパークで走る必要があるパンダに関する作業プログラムを持っています。私はこれを行うためにDatabricksを使用しています。 'sqlContext'と 'sc'を初期化した後、私はCSVファイルを読み込み、Sparkデータフレームを作成します。これを実行した後、私はこのデータフレームをPandasデータフレームに変換します。ここで私はすでに必要なことをするためのコードを書いています。SparkのPandasコマンドでエラーが発生しましたか?
目的:CSVファイルを読み込んでデータ型を識別し、各列のデータ型を返す必要があります。トリッキーな部分は、日付がさまざまな形式になっていることです。この形式では、(このコミュニティの助けを借りて)正規表現をマッチさせるために書いています。私はすべてのデータ型に対してこれを行います。最後に、列を正しい型に変換し、各列の型を印刷します。
成功裏に私のパンダのデータフレームをロードした後、私はこのエラーを取得しています:
:私はこれをトリガしている実行しているコードを:「例外TypeError to_numericは() 『意気消沈』予想外のキーワード引数を得ました」
# Changing the column data types
if len(int_count) == len(str_count):
df[lst[col]] = pd.to_numeric(df[lst[col]], errors='coerce', downcast='integer')
if len(float_count) == len(str_count):
df[lst[col]] = pd.to_numeric(df[lst[col]], errors='coerce', downcast='float')
if len(boolean_count) == len(str_count):
df[lst[col]] = df[lst[col]].astype('bool')
if len(date_count) == len(str_count):
df[lst[col]] = pd.to_datetime(df[lst[col]], errors='coerce')
'lst'は列ヘッダーで、 'col'は列ヘッダーを反復処理するために使用した変数です。このコードは、PyCharm上で動作しているときに完全に機能しました。なぜSparkでこのエラーが発生するのかわからない。
助けがあれば助かります。あなたのコメントから
'df'、パンダのデータフレームまたはスパーク1とは何ですか?そして、正確なコマンドでエラーが起きますか?あなたのコードの詳細を共有しても害はありません... – desertnaut
@desertnaut dfは私のPandasデータフレームです。それはエラーであるダウンキャストで私の最初のコマンドであることを拾っている。私はここに私のコード全体を載せたくありませんでしたが、私が喜んで投稿する情報はこれ以上ありません。 – rmahesh
だから、パンダ関連の質問のように聞こえます.Sparkが何をしなければならないのか(最初のデータフレームを変換すること以外は)見ることができません。私は、最初のデータをパンダに直接ロードすることをお勧めします - あなたがまだこの問題に直面している場合、それは実際にはスパークとは関係ありません(いずれにせよ、 'スパークのpandasコマンド'は問題の正確な説明ではありません)。 – desertnaut