import pandas as pd
f = pd.read_table('151101.mnd',header = 30)
print f.head()
print f.shape
2015-11-01 00:10:00 00:10:00
0 # z speed dir W sigW bck error
1 30 5.05 333.0 0.23 0.13 1.44E+05 0.00
2 40 5.05 337.1 -0.02 0.14 7.69E+03 0.00
3 50 5.03 338.5 0.00 0.15 4.83E+03 0.00
4 60 6.21 344.3 -0.09 0.18 6.13E+03 0.00
(4607, 1)
基本上我有一个文件,我和熊猫一起读。有两件事我想做。在
我想将Time
头存储为一个名为time的变量。其中最棘手的部分是,每33行,另一个数据块从一天中的下一个10分钟开始。所以我想每33行我都需要抓取Time
头并将其存储为变量time。
当我打印出文件的形状时,它显示有4,607 rows
和1列。不过,我想把这个“一列文本”分成8列。index
,z
,speed
,dir
,w
,sigw
,bck
,error
。
我如何完成这两件事?在
您应该从文件中删除
2015-11-01 00:10:00 00:10:00
行,因为这会导致pandas
将其视为列标题,将下面的所有内容都转储到具有该名称的列中。在案例(1)行在同一步骤中重复
情况(2)不需要的行随机出现
如果不是这样,则必须手动删除它,因此需要首先将数据加载到单个列中
^{pr2}$然后您需要通过执行以下操作来检测不需要的列
然后只切片所需的列
然后最后创建最终的
dataframe
我想如果每33行都是用日期填充的,那么您需要通过函数^{} 来解析每32行。在
然后对数据进行过滤,因为数据头在函数isin之间。在
第二部分解析数据帧
df1
的日期。我通过参数names
指定三列,然后通过parse_dates
将datetime解析为一列Datetime
。在然后数据被函数str.contains过滤到dataframe
df1
。在所有索引都由函数reset_index重置。在
相关问题 更多 >
编程相关推荐