2015-09-14 284 views
2

#NAME錯誤我有一個DF,看起來像這樣:導出大熊貓CSV結果在CSV

Words 
    +Beverly +Hills 
    +Andrea +Johnson 
    +Football 

導出此使用df,可以到CSV:

df.to_csv('df.csv', index=False) 

然而,因爲每個字在它之前有一個'+',excel正在讀取這些單元格作爲導致#NAME錯誤的等式。我知道我可以強制'在字符串之前讓excel將其讀爲明文,但是這會導致我不想要的領先'。

有關修復導出錯誤的建議?

+1

能代替你做:'df.to_excel( 'df.xlsx',指數= FALSE)'? – bernie

+0

'csv'本身並不差,只有Excel的閱讀。你可以在文本編輯器或其他軟件包中打開文件。您也可以相信導入cvs以文本形式出現,而不是簡單地雙擊文件打開它。 –

+0

嘿@Bernie,我試過了 - 我不斷收到這個錯誤ValueError:此時不支持安裝openpyxl。使用> = 1.6.1和<2.0.0。如果我能夠解決這個問題,轉換會做什麼? – user3682157

回答

1

使用to_excel和xlsxwriter引擎可以將DataFrame寫入到xlsx文件中,不存在任何問題。也許這很好。但是,使用Excel將xlsx文件轉換爲cvs格式後,您遇到過同樣的問題。

下面是創建XLSX文件的例子:

import pandas as pd 
from pandas import DataFrame 
data = {'Words': ['+Beverly +Hills', '+Andrea +Johnson', '+Football']} 
df = DataFrame(data) 
df 
Out[2]: 
       Words 
0 +Beverly +Hills 
1 +Andrea +Johnson 
2   +Football 

writer = pd.ExcelWriter('df.xlsx', engine='xlsxwriter') 
df.to_excel(writer, sheet_name='Sheet1') 
writer.save() 

# contents of df.xlsx are now 
#  Words 
# 0 +Beverly +Hills 
# 1 +Andrea +Johnson 
# 2 +Football