使用PANDA/NumPy数组读取文本文件

hwamh0ep  于 2022-11-10  发布在  其他
关注(0)|答案(2)|浏览(121)

我需要从这个文件中读取观察结果,并每天存储它们。每日观察以#开头,这条线下面是每日观察。观察值中的列分别是‘LVLpTYP’、‘eTime’、‘Presence’、‘GPH’、‘Temp’、‘RH’、‘DPDP’、‘WDIR’、‘WSPD’。我不想跳过包含#s的标题行,因为它们有时间戳。
https://drive.google.com/file/d/1-o_M_nOSFU4J39Bczs4VfsCONrM-9l5w/view?usp=sharing
我想不出任何解决办法,让我也能这么做。
通过这种方式,我可以将它们读作字符串,但它没有任何帮助。

import numpy as np
import sys

arrays = [np.array(list(map(str, line.split()))) for line in open('INM00043333-data.txt')]
qxgroojn

qxgroojn1#

这个问题非常含糊,需要更多细节才能准确回答。这包括澄清此文件的“适当”存储格式,以及您可能拥有的代码,以尝试首先解决此问题。

acruukt9

acruukt92#

你为什么要读这份文件?

import pandas as pd
df = pd.read_fwf(r"D:\Downloads\INM00043333-data.txt", delimiter= '\s+')
print(df)
print(df.columns)

输出#df


# INM00043333 2016 02 06 00 0000  247 ncdc-gts   116667        927167

0      21 -9999 100100B -9999   234B -9999    31      36...           NaN
1      10 -9999 100000A   79B  230B -9999    38       5...            NaN
2      20 -9999  97800 -9999   234B -9999    25       25...           NaN
3      20 -9999  96400 -9999   250B -9999   110      -9999...         NaN
4      20 -9999  96000 -9999 -9999 -9999 -9999        50 ...          NaN
...                                                  ...         ...
90224  30 -9999  -9999   600 -9999 -9999 -9999        55 ...         NaN
90225  30 -9999  -9999   900 -9999 -9999 -9999        55 ...         NaN
90226  30 -9999  -9999  1800 -9999 -9999 -9999        70 ...         NaN
90227  30 -9999  -9999  2100 -9999 -9999 -9999        90 ...         NaN
90228  30 -9999  -9999  2400 -9999 -9999 -9999        85 ...         NaN

DF#列

Index(['#INM00043333 2016 02 06 00 0000  247 ncdc-gts   116667', '927167'], dtype='object')

相关问题