首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python:使用熊猫读取txt文件时出错

Python:使用熊猫读取txt文件时出错
EN

Stack Overflow用户
提问于 2016-05-19 15:25:59
回答 1查看 451关注 0票数 1

我有一个txt文件"TempData.txt“,其格式如下:

代码语言:javascript
复制
CODE    O/F Valid Date  MAX MIN AVG
K3T5    O   1995/01/01  51  36  44
K3T5    O   1995/01/02  45  33  39
K3T5    O   1995/01/03  48  38  43

我正在尝试创建一个字典,其中包含“ValidDates”、“Max”和“Min”元素。

我正在尝试以下几点:

代码语言:javascript
复制
import pandas as pd
df = pd.read_csv(r'C:\TempData.txt', sep = "\t", header = 0)

df.columns.tolist() #prints: 'CODE', 'O/F', 'Valid Date', 'MAX', 'MIN', 'AVG'
Max = df([4])

当我试图分离Max colum时,我得到了错误:

代码语言:javascript
复制
TypeError: 'DataFrame' object is not callable
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-19 15:27:38

我想你可以用:

代码语言:javascript
复制
max_col = df['MAX']

print (max_col)
0    51
1    45
2    48
Name: MAX, dtype: int64

如果要选择4.列,请使用iloc

代码语言:javascript
复制
max_col = df.iloc[:, 3] #3, because python counts 0,1,2,3

print (max_col)
0    51
1    45
2    48
Name: MAX, dtype: int64

首先,您可以省略header=0,因为它是read_csv中的默认值,并添加用于将Valid Date转换为datetimeparse_dates

如果需要dict来自Valid DateMAXMIN列,则使用to_dict,如果需要不同格式的dict,请尝试添加参数orient

代码语言:javascript
复制
df = pd.read_csv(r'C:\TempData.txt', sep = "\t", parse_dates=[2])
print (df)
   CODE O/F Valid Date  MAX  MIN  AVG
0  K3T5   O 1995-01-01   51   36   44
1  K3T5   O 1995-01-02   45   33   39
2  K3T5   O 1995-01-03   48   38   43


print (df[['Valid Date','MAX','MIN']])
  Valid Date  MAX  MIN
0 1995-01-01   51   36
1 1995-01-02   45   33
2 1995-01-03   48   38

print (df[['Valid Date','MAX','MIN']].to_dict())
{'MAX': {0: 51, 1: 45, 2: 48}, 
'MIN': {0: 36, 1: 33, 2: 38}, 
'Valid Date': {0: Timestamp('1995-01-01 00:00:00'), 1: Timestamp('1995-01-02 00:00:00'), 2: Timestamp('1995-01-03 00:00:00')}}

print (df[['Valid Date','MAX','MIN']].to_dict(orient='split'))
{'data': [['1995/01/01', 51, 36], ['1995/01/02', 45, 33], ['1995/01/03', 48, 38]], 'index': [0, 1, 2], 'columns': ['Valid Date', 'MAX', 'MIN']}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37327748

复制
相关文章

相似问题

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