| 9 | 1/1 | 返回列表 |
| 查看: 765 | 回復(fù): 8 | |||
zhangyujin銅蟲 (正式寫手)
|
[求助]
怎樣揀出一系列文檔中每個(gè)文檔第二列的最大值
|
| 我的程序運(yùn)行出來結(jié)果是這樣存放的:一個(gè)主文件夾下有十個(gè)子文件夾名字各不相同1、2、3、4……,每個(gè)子文件夾下有三十個(gè).dat文檔名字也不相同(z_0_E_t.dat/z_2_E_t.dat……),每個(gè)文檔中有兩列數(shù)據(jù),每列有55602行。我需要把每個(gè)子文件夾中z_0_E_t.dat和z_2_E_t.dat中第二列的最大值求出來,然后把這些最大值放在一個(gè)文檔中輸出來,輸出格式是二列,第一列存放的是十個(gè)子文件夾每個(gè)文件夾中的z_0_E_t.dat文檔的第二列的最大值,第二列存放的是十個(gè)子文件夾每個(gè)文件夾中的z_2_E_t.dat文檔的第二列的最大值。哪位高手能編寫個(gè)小程序?qū)崿F(xiàn)這個(gè)功能?什么語言都可以。感激不盡啊。 |

金蟲 (小有名氣)
|
cut -d\' \' -f 2 youfile | sort |tail 記不清這幾個(gè)命令的參數(shù)了,如果不對(duì)看下幫助 基本方法是: 利用管道 cut的-d指定列與列間的分隔符,-f指定你要的列 sort將數(shù)據(jù)排序,排序貌似是升序,如果不對(duì),加參數(shù)要求按數(shù)值或字符排 tail取最后10個(gè) [ 發(fā)自手機(jī)版 http://www.gaoyang168.com/3g ] |
版主 (知名作家)

銅蟲 (正式寫手)

金蟲 (文壇精英)
|
使用bash腳本來做,請?jiān)趌inux或mac下執(zhí)行。請?jiān)谥魑募䦅A下執(zhí)行。 vim test.sh ### start of script #!/bin/bash for d in `ls -d -- */`; do cat $d/z_0_E_t.dat | awk '{print $2}' | sort -r | sed -n '1p' >> tmp cat $d/z_2_E_t.dat | awk '{print $2}' | sort -r | sed -n '1p' >> tmp done sed 'N;s/\n/ /' tmp > final.txt ### end of script |
金蟲 (文壇精英)
|
python version: 可在windows下運(yùn)行。 #start of script #!/usr/bin/env python def GetMax(fs): f = open(fs, "r" ![]() max = 0 for line in f.readlines(): v = line.split()[1] if v > max: max = v f.close() return max if __name__ == "__main__": m1 = [] m2 = [] import sys main_dir= sys.argv[1] f = open("result.txt", "w+" ![]() for i in range(1, 11): m1 = GetMax("%s/%d.f90.out/z_0_E_t.dat"%(main_dir, i)) m2 = GetMax("%s/%d.f90.out/z_2_E_t.dat"%(main_dir, i)) f.write("%d %d\n"%(m1, m2)) f.close() #end of script 運(yùn)行方法:在命令行下運(yùn)行 python process.py "C:/" |
金蟲 (文壇精英)
銅蟲 (正式寫手)
|
我們的集群是每個(gè)人一個(gè)賬戶,統(tǒng)一管理的,所以提交任務(wù)需要先建立一個(gè)臨時(shí)目錄,、計(jì)算相關(guān)信息存放在臨時(shí)目錄里,計(jì)算完了再刪掉。下面的腳本是一個(gè)可執(zhí)行的腳本,實(shí)現(xiàn)的是把bin文件夾里的若干個(gè)程序一起提交,按照順序一個(gè)個(gè)的執(zhí)行。我想把你給的那個(gè)尋找最大值并且輸出的腳本嫁接到這個(gè)可執(zhí)行的腳本上來,這樣才可以用,但是改了很多地方都有問題,沒有final.txt產(chǎn)生。因?yàn)閯偨佑|linux語言,還不是太靈活,可能是我遺漏了需要改動(dòng)的地方,麻煩你幫忙看一下怎么嫁接這兩個(gè)腳本。 #!/bin/sh #PBS -N Others #PBS -l nodes=1:ppn=1 #PBS -l walltime=200:00:00 #PBS -q OTHERS #PBS -j oe NPROCS=`wc -l < $PBS_NODEFILE` mkdir -p /tmp/$PBS_JOBID cp -r $PBS_O_WORKDIR/* /tmp/$PBS_JOBID cd /tmp/$PBS_JOBID for ExeFile in $(ls /tmp/$PBS_JOBID/bin) do mkdir -p /tmp/$PBS_JOBID/Result/$ExeFile.out cp /tmp/$PBS_JOBID/bin/$ExeFile /tmp/$PBS_JOBID/Result/$ExeFile.out cd /tmp/$PBS_JOBID/Result/$ExeFile.out ifort $ExeFile /tmp/$PBS_JOBID/Result/$ExeFile.out/a.out done cp -r /tmp/$PBS_JOBID/* $PBS_O_WORKDIR rm -rf /tmp/$PBS_JOBID |

金蟲 (文壇精英)
|
首先目錄結(jié)構(gòu): $PBS_O_WORKDIR +--- bin | +---test.sh +-- data +---1.f90.out +--- xxx.dat +--- ... +---2.f90.out +.... vim test.sh ### start of script #!/bin/bash cd ../data for d in `ls -d -- */`; do cat $d/z_0_E_t.dat | awk '{print $2}' | sort -r | sed -n '1p' >> tmp cat $d/z_2_E_t.dat | awk '{print $2}' | sort -r | sed -n '1p' >> tmp done sed 'N;s/\n/ /' tmp > final.txt ### end of script |
| 9 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 招08考數(shù)學(xué) +6 | laoshidan 2026-03-20 | 14/700 |
|
|---|---|---|---|---|
|
[考研] 一志愿上海交大生物與醫(yī)藥專碩324分,求調(diào)劑 +4 | jiajunX 2026-03-22 | 4/200 |
|
|
[考研] 085600材料與化工 +10 | 安全上岸! 2026-03-16 | 10/500 |
|
|
[考研] 一志愿 西北大學(xué) ,070300化學(xué)學(xué)碩,總分287,雙非一本,求調(diào)劑。 +3 | 晨昏線與星海 2026-03-20 | 3/150 |
|
|
[考研] 285求調(diào)劑 +6 | ytter 2026-03-22 | 6/300 |
|
|
[考研] 廣西大學(xué)材料導(dǎo)師推薦 +3 | 夏夏夏小正 2026-03-17 | 5/250 |
|
|
[考研]
|
Grand777 2026-03-21 | 3/150 |
|
|
[考研] 材料工程專碩 348分求調(diào)劑 +3 | 冬辭. 2026-03-17 | 5/250 |
|
|
[考研] 一志愿南大,0703化學(xué),分?jǐn)?shù)336,求調(diào)劑 +3 | 收到VS 2026-03-21 | 3/150 |
|
|
[考研] 求調(diào)劑 +3 | 13341 2026-03-20 | 3/150 |
|
|
[考研] 297求調(diào)劑 +11 | 戲精丹丹丹 2026-03-17 | 12/600 |
|
|
[考研] 307求調(diào)劑 +3 | 余意卿 2026-03-18 | 3/150 |
|
|
[考研] 求調(diào)劑 +6 | Mqqqqqq 2026-03-19 | 6/300 |
|
|
[考研] 265求調(diào)劑 +9 | 梁梁校校 2026-03-17 | 9/450 |
|
|
[考研] 一志愿 西北大學(xué) ,070300化學(xué)學(xué)碩,總分287,雙非一本,求調(diào)劑。 +4 | 晨昏線與星海 2026-03-19 | 4/200 |
|
|
[考研] 329求調(diào)劑 +9 | 想上學(xué)吖吖 2026-03-19 | 9/450 |
|
|
[考研] 材料學(xué)求調(diào)劑 +4 | Stella_Yao 2026-03-20 | 4/200 |
|
|
[考研] 收復(fù)試調(diào)劑生 +4 | 雨后秋荷 2026-03-18 | 4/200 |
|
|
[考研] 085601求調(diào)劑 +4 | Du.11 2026-03-16 | 4/200 |
|
|
[考研] [導(dǎo)師推薦]西南科技大學(xué)國防/材料導(dǎo)師推薦 +3 | 尖角小荷 2026-03-16 | 6/300 |
|