2017-06-23 3 views
-1

次のコードを実行しようとすると、期待した結果が得られません。出力を複数の列にまたがるようにしたい。csvでPandas Dataframe Outputを修正するには

:それはこの

"column1の、column2の、COLUMN3"
"自衛隊、E、SD"

import pandas as pd 
outputPath = r'C:\Users\Jfairfield\Desktop\output.csv' 
testPath = r'C:\Users\Jfairfield\Desktop\test.csv' 
csvData = pd.read_csv(testPath, 'Sheet1') 
csvData.to_csv(outputPath, index=False) 

入力などのデータを引用符で囲んで投げているように見えます

enter image description here

テキストとして入力
column1、column2、 COLUMN3
自衛隊、eは、

電流出力をSD:

enter image description here

+0

'csvData = pd.read_csv(testPath、 'シート1'、9月= '')'の代わりに 'csvData = pd.read_csv(testPath、 'シート1')してみてください' – jacoblaw

+1

入力ファイルのいくつかの行を__text__として表示できますか? – MaxU

+1

@MaxU woops、私はドキュメントをチェックし、それの後にスペースがあると思った。もう一度それを見て、あなたはそれにぴったりです。 – jacoblaw

答えて

3
outputPath = r'C:\Users\xxx\Desktop\Python fo excel\mycsv - Copy.csv' 
testPath = r'C:\Users\xxx\Desktop\Python fo excel\mycsv.csv' 
csvData = pd.read_csv(testPath, sep=',', engine='python') 
print(csvData) 
csvData.to_csv(outputPath, index=False, sep=',') 

出力

 A B C 
0 sdf e sd 
+0

私はあなたを愛していますMr_U!これは完全に機能しました。あなたのバージョンについて何が違うのか分かりません.... –

1

は、それはあなたがエスケープテキストファイル、で引用されたラインを持っている可能性がありますデリミタを使用している場合は、quoting=3(見積もりなし)と設定してください。

stripQuote = lambda x: x.strip('"') 
​ 
df = pd.read_csv(StringIO(""" 
"a,b,c" 
"d,e,f" 
"""), quoting=3, converters={0: stripQuote, 2: stripQuote}) 
​ 
df.columns = ['a','b','c'] 

df 
# a b c 
#0 d e f 
+0

テキストファイルに引用符付きの行はありません。元のファイルは単なる値です。 –

関連する問題