import sys, subprocess, glob
mdbfiles = glob.glob('*.res')
for DATABASE in mdbfiles:
subprocess.call(["mdb-schema", DATABASE, "mysql"])
table_names = subprocess.Popen(["mdb-tables", "-1", DATABASE],
stdout=subprocess.PIPE).communicate()[0]
tables = table_names.splitlines()
sys.stdout.flush()
a=str('Channel_Normal_Table')
for table in tables:
if table != '' and table==a:
filename = DATABASE.replace(".res","") + ".csv"
file = open(filename, 'w')
print("Dumping " + table)
contents = subprocess.Popen(["mdb-export", DATABASE, table],
stdout=subprocess.PIPE).communicate()[0]
# I NEED TO PUT SOMETHING HERE TO SORT AND EXTRACT THE DATA I NEED
file.write(contents)
file.close()
我从数据库中提取了一个表。我们称之为table
。我需要执行以下操作,但有点卡住了:
我尝试了各种方法,比如根据我有限的Python知识创建和排序字典和列表,但是没有一种方法得到所需的输出。这简直让我发疯了。谢谢!在
使用pandas和pymdb可以轻松完成工作
使用pandas,您可以毫不费力地处理时间序列数据。 看看吧熊猫数据帧. 这就是你所需要的。在
首先,让我们读取该文件并将找到的值转换为循环列的整数,其余的值为浮点:
印刷品:
^{pr2}$现在,您可以根据刚刚创建的列表列表中的循环列列表创建组字典:
^{3}$印刷品:
现在您可以直接获得每个周期的最后N行:
如果要按最新时间对其中一个组进行排序:
编辑
下载链接的dropbox文件时,您的csv文件不是空格分隔的。在
以下是如何阅读这样的内容:
在内存中保存后,可以按特定的数字列进行排序:
^{8}$这并不难,但你必须一步一步来:
相关问题 更多 >
编程相关推荐