2016-03-26 16 views

cevap

1

Böyle 8 sütunun değerler elde edebilirsiniz:

for rownum in range(sheet.nrows): 
    x.append(sheet.cell(rownum, 7)) 
0

Eğer xlrd ile kilitli değilseniz muhtemelen kullanılmış olurdu pandalar yerine oldukça iyi olan her yerden verilerle çalışırken:

import pandas as pd 

df = pd.ExcelFile('location/test.xlsx').parse('Sheet1') #you could add index_col=0 if there's an index 
x=[] 
x.append(df['name_of_col']) 

o zaman sadece pandalar ile yeni bir excel dosyasına tüm th almak için df.to_excel()

0

farkla en kolay yolu yeni çıkartılan sütunlar yazabilirsiniz xlrd kullanılarak bir sütunda e değerleri col_values() çalışma yöntemi aşağıdaki gibidir:

x = [] 
for value in sheet.col_values(8): 
    if isinstance(value, float): 
     x.append(value) 

arada,

(sütun H istiyorum endeksleri 0 ° C'de başlar, çünkü, 7 kullanması gerektiğini not) Eğer

x = [] 
for cell in sheet.col(8): 
    if isinstance(cell.value, float): 
     x.append(cell.value) 

bu şeyleri bulmak için en iyi yer Offici geçerli: bir sütunda hücresini nesneleri almak için col() kullanabilirsiniz al tutorial (xlrd, xlwt ve xlutils için uygun bir referans görevi görür). Tabii ki documentation ve kaynak kodunu da kontrol edebilirsiniz.

0

:

import openpyxl 
fname = 'file.xlsx' 
wb = openpyxl.load_workbook(fname) 
sheet = wb.get_sheet_by_name('sheet-name') 
for rowOfCellObjects in sheet['C5':'C7']: 
    for cellObj in rowOfCellObjects: 
    print(cellObj.coordinate, cellObj.value) 

Sonuç:
C5 70.82
C6 84,82
C7 96,82

Not: aralıkları kolonlar için belirtilmiştir: fname istenen tabakaya ve tabakanın [ 'C7' 'C5'] atıfta bulunur dosyasını, get_sheet_by_name ('tabaka adı') geçmek için ifade eder.

Daha fazla ayrıntı için link'a bakın. Kod bölümü buradan da alındı.

İlgili konular