Как сохранить строку столбца в Excel с помощью Python - PullRequest
0 голосов
/ 20 июня 2019

Я приложил скриншот моего листа Excel. Я хочу сохранить длину каждой строки в столбце SUPPLIER_id Length. Но когда я запускаю свой код, столбцы CSV являются пробелами.

И когда я использую этот же код в разных CSV, он работает хорошо.

Я использую следующий код, но не могу напечатать данные.

Я приложил фрагмент csv. Может кто-нибудь сказать мне, почему это происходит:

enter image description here

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")

Ответы [ 2 ]

1 голос
/ 20 июня 2019

Я сталкивался с подобной проблемой в прошлом.

Вместо:

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

Введите это:

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

Кроме того, я не понимаю, почемуВы создали DataFrame DF.Это было ненужным по моему мнению.

0 голосов
/ 20 июня 2019

Разве вы не получаете 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)  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...