社区首页 >问答首页 >将Excel行读入Python

将Excel行读入Python
EN

Stack Overflow用户
提问于 2016-03-06 22:11:53
回答 4查看 133关注 0票数 4

我想导入保存在Excel中的数据线。如何将每一行的数据保存为列表?

Excel文件具有以下类型的数据:

代码语言:javascript
代码运行次数:0
复制
Name   B  C   D
ItemID 3  3   4
Height 5  5   7
Length 6  5   8

我想将B、C、D保存在名为Name的列表中,将3,3,4保存为名为ItemID的列表。我尝试使用以下代码,但它总是返回文件的最后一行。

代码语言:javascript
代码运行次数:0
复制
f = open('part.csv', 'r')
csv_f=csv.reader(f,delimiiter=',')
for row in csv_f:
    name.append(row[1])
    numid.append(row[2])
    height.append(row[3])
    length.append(row[4])
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-03-07 20:55:53

强烈建议考虑使用熊猫 -- python数据分析库。

代码语言:javascript
代码运行次数:0
复制
import pandas as pd

csv_df = pd.read_csv('part.csv')
df_T = csv_df.T

print df_T['ItemID'].tolist()
print df_T.index.tolist()
票数 0
EN

Stack Overflow用户

发布于 2016-03-06 22:20:01

我认为您误解了一个行拥有该行的所有列,例如,第一次通过循环row = ['Name', 'B', 'C', 'D']

因此,使用字典,将键作为第一列,其余作为值:

代码语言:javascript
代码运行次数:0
复制
data = {}
with open('part.csv', 'r') as f:
    csv_f=csv.reader(f,delimiiter=',')
    for row in csv_f:
        data[row[0]] = row[1:]

数据:

代码语言:javascript
代码运行次数:0
复制
{'Height': ['5', '5', '7'],
 'ItemID': ['3', '3', '4'],
 'Length': ['6', '5', '8'],
 'Name': ['B', 'C', 'D']}
票数 2
EN

Stack Overflow用户

发布于 2016-03-06 22:20:18

尝尝这个

代码语言:javascript
代码运行次数:0
复制
with open('testdata.csv') as csvfile:
    reader = csv.DictReader(csvfile)
    for row in reader:
        name.append(row['fieldname'])
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35837274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档