簡體   English   中英

如何使用python在Excel中存儲列的字符串

[英]How to store the string of the column in excel using python

我已附上我的Excel工作表的屏幕截圖。 我想將每個字符串的長度存儲在SUPPLIER_id Length列中。 但是,當我運行代碼時,CSV列為空白。

當我在不同的CSV中使用相同的代碼時,效果很好。

我正在使用以下代碼,但無法打印數據。

我已經附上了csv的代碼段。 有人可以告訴我為什么會這樣:

在此處輸入圖片說明

import pandas as pd    
data = pd.read_csv(r'C:/Users/patesari/Desktop/python work/nba.csv')    
df = pd.DataFrame(data, columns= ['SUPPLIER_ID','ACTION'])    
data.dropna(inplace = True)    
data['SUPPLIER_ID']= data['SUPPLIER_ID'].astype(str)    
data['SUPPLIER_ID LENGTH']= data['SUPPLIER_ID'].str.len()    
data['SUPPLIER_ID']= data['SUPPLIER_ID'].astype(float)    
data    
print(df)    
data.to_csv("C:/Users/patesari/Desktop/python work/nba.csv")

我過去也遇到過類似的問題。

代替:

df = pd.DataFrame(data, columns= ['SUPPLIER_ID','ACTION']) 

輸入:

data.columns=['SUPPLIER_ID','ACTION']

另外,我不明白您為什么創建DataFrame df。 我認為這是不必要的。

您不是從熊貓那里得到了SettingWithCopyWarning嗎? 我會想象(沒有運行這段代碼)這些行

data['SUPPLIER_ID']= data['SUPPLIER_ID'].astype(str)
data['SUPPLIER_ID LENGTH']= data['SUPPLIER_ID'].str.len()    
data['SUPPLIER_ID']= data['SUPPLIER_ID'].astype(float)  

不會做任何事情,應該替換為

data.loc[:, 'SUPPLIER_ID']= data['SUPPLIER_ID'].astype(str)  
data.loc[:, 'SUPPLIER_ID LENGTH']= data['SUPPLIER_ID'].str.len()    
data.loc[:, 'SUPPLIER_ID']= data['SUPPLIER_ID'].astype(float)  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM