如何用Python从双列数据文件中提取顶部、中部及底部数据
Python实现数据排序与分组提取
我有一个包含2列数据的datafile.txt文件(共25行),之前用Excel完成排序操作,现在想改用Python实现数据排序,并提取指定分组的数据。以下是相关信息:
数据文件示例(datafile.txt)
UQ8SAI 12.539 V2LCFW -11.487 KCP5LY 10.31 I2GYD5 7.321 BOONZZ -5.652 BL19JU 0.669 0E10MH -8.472 SRS7A0 -0.5 0IS2PR -0.686 PL7BMP 0.561 D4SBIM -14.535 NTT0RP 3.339 7U2SWD -7.216 2B2L1X 20.31 OEMHED -0.561 6F6SR8 5.652 1GPMVW -0.3401 3GYYED 0.821 21N6JN -5.292 DBSUQ1 -6.3403 FXE8UH 3.1012 LFB00W -4.9191 COSZVU 0.0132 DBSUQ3 6.923 QQTW8M 7.2584
当前参考代码(来自@Tim Roberts)
import pandas as pd data = {} for row in open('x.csv'): cols = row.rstrip().split() if cols[2] not in data: data[cols[2]] = {} data[cols[2]][cols[0]] = cols[1] print(data) df = pd.DataFrame(data) print(df)
期望输出结果
#- 前5大正数(从高到低) 2B2L1X 20.31 UQ8SAI 12.539 KCP5LY 10.31 I2GYD5 7.321 QQTW8M 7.2584 #- 中间组1:-2及以下的前4个(数值从低到高) 0IS2PR -0.686 OEMHED -0.561 SRS7A0 -0.5 1GPMVW -0.3401 #- 中间组2:0到2及以上的前4个(数值从高到低) 3GYYED 0.821 BL19JU 0.669 PL7BMP 0.561 COSZVU 0.0132 #- 后5小负数(数值从低到高) D4SBIM -14.535 V2LCFW -11.487 0E10MH -8.472 7U2SWD -7.216 DBSUQ1 -6.3403
内容的提问来源于stack exchange,提问作者DarCoy
相关产品推荐
相关产品推荐

