2017-06-01 35 views
2

私はこの質問の一部を投稿しました。数日前には良い答えがありましたが、それは私の問題の一部を解決しました。 私は、いくつかのデータマイニングを行う必要があるExcelファイルを持っています。その後、同じ形式の別のExcelファイルを用意する必要があります。問題は、ファイルを書き込んだ後に奇妙な列が表示されることです。アナコンダを使った執筆の前に見ることはできません。そしてそれは、その外観に反する戦略を開発することをより困難にする。私は最初に私は0に幅を減らすことによって問題を解決しましたが、明らかにファイルがテキストで変換される必要があり、その後、列が再び現れる必要があります。詳細について は、ここに私のコードの一部です:PythonでExcelファイルを書き込む

import os 
import pandas as pd 
import numpy as np 
import xlsxwriter 

# Retrieve current working directory (`cwd`) 
cwd = os.getcwd() 
cwd 

# Change directory 
os.chdir("/Users/s7c/Documents/partsstop") 

# Assign spreadsheet filename to `file` 
file = 'file = 'SC daily inventory retrieval columns for reports'.xlsx 

# Load spreadsheet 
xl = pd.ExcelFile(file) 

# Load a sheet into a DataFrame by name: df 
df = xl.parse('Sheet1') 

#second file code: 
#select just the columns we need and rename them: 
df2 = df.iloc[:, [1, 3, 6, 9]] 
df2.columns = ['Manufacturer Code', 'Part Number', 'Qty Available', 'List Price'] 

#then select just the rows we need: 
df21 = df2[df2['Manufacturer Code'].str.contains("DRP")]#13837 entries 

#select just the DRP, first 3 characters and dropping the ones after: 
df21['Manufacturer Code'] = df21['Manufacturer Code'].str[:3] 

#add a new column: 
#in order to do that we need to convert the next column to numeric: 
df21['List Price'] = pd.to_numeric(df21['List Price'], errors='coerce') 
df21['Dealer Price'] = df21['List Price'].apply(lambda x: x*0.48) #new column equals half of other column 
writer = pd.ExcelWriter('example2.xlsx', engine='xlsxwriter') 

# Write your DataFrames to a file  
df21.to_excel(writer, 'Sheet1') 

問題の実際のビュー:任意の建設的なアイデアが高く評価され enter image description here

。ありがとう!

答えて

4

この列は、DataFrameのインデックスのようです。 index=Falseto_excel()に渡すことで除外できます。

関連する問題