Hướng dẫn how do i convert a column to a list in python excel? - làm cách nào để chuyển đổi một cột thành một danh sách trong python excel?

21

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi đang sử dụng Python XLWings để đọc một cột dữ liệu trong Excel 2013. Cột A được điền với các số. Để nhập cột này vào danh sách Python

import pandas as pd

df = pd.read_excel['filename.xlsm', sheetname=0] # can also index sheet by name or fetch all sheets
mylist = df['column name'].tolist[]
0, tôi có mã sau;

import xlwings as xw

wb = xw.Book['BookName.xlsm']
sht = xw.Book['SheetName']
py_list = sht.range['A2:A40'].value

Mã trên hoạt động nếu dữ liệu cột được điền vào

import pandas as pd

df = pd.read_excel['filename.xlsm', sheetname=0] # can also index sheet by name or fetch all sheets
mylist = df['column name'].tolist[]
1. Tuy nhiên, dữ liệu cột có thể tiếp tục phát triển. Dữ liệu có thể phát triển và kéo dài đến
import pandas as pd

df = pd.read_excel['filename.xlsm', sheetname=0] # can also index sheet by name or fetch all sheets
mylist = df['column name'].tolist[]
2 hoặc
import pandas as pd

df = pd.read_excel['filename.xlsm', sheetname=0] # can also index sheet by name or fetch all sheets
mylist = df['column name'].tolist[]
3. Hàng cuối cùng trống. Nó không được biết đến tại thời điểm biên dịch có bao nhiêu hàng dữ liệu trong cột này.

Làm thế nào tôi có thể sửa đổi mã để phát hiện ô trống ở hàng cuối cùng để phạm vi dữ liệu có thể được đọc bởi

import pandas as pd

df = pd.read_excel['filename.xlsm', sheetname=0] # can also index sheet by name or fetch all sheets
mylist = df['column name'].tolist[]
0?

Tôi sẵn sàng sử dụng các thư viện Python khác để đọc dữ liệu Excel ngoài XLWings. Tôi đang sử dụng Python v3.6

Hỏi ngày 16 tháng 8 năm 2017 lúc 8:26Aug 16, 2017 at 8:26

user3848207user3848207user3848207

2.83114 Huy hiệu vàng49 Huy hiệu bạc82 Huy hiệu đồng14 gold badges49 silver badges82 bronze badges

Tôi nói điều này rất nhiều về việc đọc các tệp từ CSV hoặc Excel, nhưng tôi sẽ sử dụng

import pandas as pd

df = pd.read_excel['filename.xlsm', sheetname=0] # can also index sheet by name or fetch all sheets
mylist = df['column name'].tolist[]
5.

import pandas as pd

df = pd.read_excel['filename.xlsm', sheetname=0] # can also index sheet by name or fetch all sheets
mylist = df['column name'].tolist[]

Một giải pháp thay thế sẽ là sử dụng một công thức động bằng cách sử dụng Soemthing như Offset trong Excel thay vì

import pandas as pd

df = pd.read_excel['filename.xlsm', sheetname=0] # can also index sheet by name or fetch all sheets
mylist = df['column name'].tolist[]
6, hoặc có lẽ là một phạm vi được đặt tên?

Đã trả lời ngày 16 tháng 8 năm 2017 lúc 8:55Aug 16, 2017 at 8:55

StaelstaelStael

2.48912 Huy hiệu bạc18 Huy hiệu đồng12 silver badges18 bronze badges

4

Tôi biết đây là một câu hỏi cũ, nhưng bạn cũng có thể sử dụng

import pandas as pd

df = pd.read_excel['filename.xlsm', sheetname=0] # can also index sheet by name or fetch all sheets
mylist = df['column name'].tolist[]
7

from openpyxl import load_workbook
wb = load_workbook["BookName.xlsx"]  # Work Book
ws = wb.get_sheet_by_name['SheetName']  # Work Sheet
column = ws['A']  # Column
column_list = [column[x].value for x in range[len[column]]]

Notes:

  • Pandas là một thư viện tuyệt vời, nhưng cài đặt nó chỉ để đọc một cột Excel vào danh sách là một IMHO quá mức.

  • XLRD không được duy trì nữa. Từ trang XLRD GitHub

    Xin lưu ý: Thư viện này hiện không có người bảo trì tích cực. Bạn nên sử dụng openpyxl thay thế.

Đã trả lời ngày 23 tháng 9 năm 2019 lúc 8:54Sep 23, 2019 at 8:54

Bitto Bennichanbitto BennichanBitto Bennichan

7.5171 Huy hiệu vàng14 Huy hiệu bạc38 Huy hiệu đồng1 gold badge14 silver badges38 bronze badges

1

Tôi thấy đây là cách dễ nhất để tạo danh sách từ toàn bộ các cột trong Excel và nó chỉ lấy các ô Excel đông dân. nhập khẩu gấu trúc dưới dạng PD nhập khẩu NP

#Insert complete path to the excel file and index of the worksheet
df = pd.read_excel["PATH.xlsx", sheet_name=0]
# insert the name of the column as a string in brackets
list1 = list[df['Column Header 1']] 
list2 = list[df['Column Header 2']]

print[list1]
print[list2]

Đã trả lời ngày 9 tháng 8 năm 2019 lúc 12:56Aug 9, 2019 at 12:56

Tôi đã trải qua tài liệu XLWings để tìm kiếm thứ gì đó, không tìm thấy thứ gì đó như thế này, nhưng bạn luôn có thể thử và đi xung quanh điều này:

temp = [x for x in xw.Range['A2:A200'].value if x != None] #A200 just put a big number..

Hoặc tôi không biết hãy thử điều này:

from itertools import takewhile
temp =[takewhile[lambda x: x != None, xw.Range['A2:A70'].value]]
while True:
    try:
         next[temp]
    except StopIteration:
         break

Ở dòng 2, lúc đầu tôi đã thử làm điều gì đó như thế này:

temp =[lambda x: x for x in xw.Range['D:D'].values if x != None else exit[]] #or to replace this with quit[] but there is no option to break lambdas as far as I know

Tùy chọn khác:

temp = iter[xw.Range['A:A'].value]
list = []
a = next[temp]               #depending your first cell starts at row 1
while a != None:             #might want zeros or '' etc
    list.append[a]
    a = next[temp]

Đã trả lời ngày 23 tháng 9 năm 2019 lúc 12:36Sep 23, 2019 at 12:36

Chìa khóa cho câu hỏi này là tìm ra số lượng hàng trong cột A.

Số lượng hàng có thể được tìm thấy với dòng đơn này bằng cách sử dụng XLWings bên dưới;

rownum = sht.range['A1'].end['down'].last_cell.row

Người ta cần đọc tài liệu API một cách cẩn thận để có được câu trả lời.

//docs.xlwings.org/en/stable/api.html#xlwings.Range

Khi số lượng hàng được tìm thấy, thật dễ dàng để tìm ra phần còn lại.

Đã trả lời ngày 17 tháng 8 năm 2017 lúc 3:12Aug 17, 2017 at 3:12

user3848207user3848207user3848207

2.83114 Huy hiệu vàng49 Huy hiệu bạc82 Huy hiệu đồng14 gold badges49 silver badges82 bronze badges

Làm cách nào để chuyển đổi một cột thành một danh sách trong Excel?

Chọn ô, phạm vi hoặc toàn bộ cột chứa các giá trị văn bản mà bạn muốn chia. Trên tab Dữ liệu, trong nhóm Công cụ dữ liệu, nhấp vào văn bản vào các cột. Thực hiện theo các hướng dẫn trong Trình hướng dẫn chuyển đổi sang các cột để chỉ định cách bạn muốn chia văn bản thành các cột riêng biệt.On the Data tab, in the Data Tools group, click Text to Columns. Follow the instructions in the Convert Text to Columns Wizard to specify how you want to divide the text into separate columns.

Làm thế nào chuyển đổi excel sang liệt kê trong Python?

Chuyển đổi excel sang danh sách python của câu trả lời của mã..
Nhập Gandas dưới dạng PD ..
df = pd.read_excel [r'path trong đó tệp excel được lưu trữ \ file nam.xlsx ', sheet_name =' tên trang tính excel của bạn '].
In [DF].

Làm thế nào để bạn thay đổi các cột trong excel trong Python?

Phương pháp số 1: Thay đổi tên cột và chỉ mục hàng bằng DF.Cột và DF.....
Phương thức số 2: Sử dụng hàm đổi tên [] với từ điển để thay đổi một cột duy nhất.# Hãy thay đổi tên cột đầu tiên.....
Phương pháp số 3: Sử dụng chức năng Lambda để đổi tên các cột.....
Phương thức số 4: Sử dụng thuộc tính giá trị để đổi tên các cột ..

Làm cách nào để đọc một cột trong Excel bằng Python?

Đọc tên cột Excel Chúng tôi nhập mô -đun Pandas, bao gồm cả Excelfile.Phương thức read_excel [] đọc dữ liệu vào khung dữ liệu gấu trúc, trong đó tham số đầu tiên là tên tệp và tham số thứ hai là trang tính.Danh sách các cột sẽ được gọi là DF.cột.The method read_excel[] reads the data into a Pandas Data Frame, where the first parameter is the filename and the second parameter is the sheet. The list of columns will be called df. columns.

Bài Viết Liên Quan

Chủ Đề