
A 回答 (8件)
- 最新から表示
- 回答順に表示
No.8
- 回答日時:
No.4です。
>C使ったこともないプログラム初心者です。
>このコードの意味はなんとなく分かるのですが、pythonでは書けないでしょうか。
すいません、私はpython使ったことないので書けるかもしれませんがわかりません。
>>inuxのコマンドかPythonのプログラムを使うかのいずれかの方法が知りたいです。
>無理じゃないかな。
と回答しましたが、pasteコマンドがあるのですね。私も知りませんでしたが、このコマンドが使えると思います。 あとは、インデックスの行をどう処理するかですね。
具体的な処理方法はわかりませんが、他の回答者の回答を参考に頑張ったください。
お役に立てずにすいませんでした。
ありがとうございます。
for文でやる方法について、頂いたご意見を基にpythonでコード書いてみましたが、何とかできました。
pasteを使ってもできそうなのですが、bashはもっと初心者なので、練習してみます。
No.7
- 回答日時:
第一カラムが数字でないのならば、paste */*のあとで、sedを使ってフィルターできるけど、フォーマットをできないので、あまりきれいではないかな。
> cat a/1
a 1.2
b 248
c 33.3
d 4094
> cat b/2
a 23
b3j 0.3
c 3
d 40.4
> cat c/3
aw 49.3
ad 1000
af 3.445
a4 34.45
> paste */* | sed -e 's/\t[a-z][0-9a-z]*/ /g'
a 1.2 23 49.3
b 248 0.3 1000
c 33.3 3 3.445
d 4094 40.4 34.45
awkをうまく使えば一行できれいにできるかもしれないけど...
No.6
- 回答日時:
ちょっとよくわからないのだけど、表のようなものを作るってことですか?
もしそうなら、これでどうですか?
> cat a/1
1
2
3
4
> cat b/2
a
b
c
d
> cat c/3
A
B
C
D
> paste */*
1 a A
2 b B
3 c C
4 d D
ありがとうございます。
はい、その通りです。
他の方の回答でもありましたが、pasteで列方向につなげることはできそうです。
問題は、各ファイルが
> cat sample_1
a 1
b 7
c 0
d 0
> cat sample_2
a 4
b 0.7
c 6
d 1
という形で1300個(1300サンプル)あって、各サンプルの値だけ取り出して列方向につなげて
> cat sample_combined
a 1 4
b 7 0.7
c 0 6
d 0 1
という形にしたいです。
pasteのオプションでtxtの特定の行を指定するコマンドってありますか?
パット見なさそうでした。
No.5
- 回答日時:
ありがとうございます。
これいけそうです!!
pasteで各ファイルを列方向につないで、pandasで不要な列を削除すれば、欲しいテーブルができそうです。
贅沢を言うと、各ファイルの値の列だけ取り出して、列方向に追加できれば最高なんですが、それってできますか?
pasteだとインデックスの列もそのまま追加されてしまいますよね。
No.4
- 回答日時:
>つまり、60483×1300のtxtファイルにする方法
つまり、完成版の1行目を出力するには、1300個のファイルを読む必要があるということですね。
>inuxのコマンドかPythonのプログラムを使うかのいずれかの方法が知りたいです。
無理じゃないかな。
Cのプログラムを書いて動かすのが一番、楽な気がします。
1300個のファイルをオープンして
for(i=0; i<60483; i++) {
タイトル行を出力
for(j=0; j<1300; j++) {
j番目の入力ファイルから1行読む
出力ファイルに改行せずに追記する
}
改行出力
}
をプログラムすれば良いのでは?
ありがとうございます。
C使ったこともないプログラム初心者です。
このコードの意味はなんとなく分かるのですが、pythonでは書けないでしょうか。
ファイル名を一括で連番に変更すれば、for文使って各ファイルにアクセスできると思うので、各ファイルの値だけ取り出して追加していく作業を1300回繰り返せば良いのかなと思いました。
No.3
- 回答日時:
No.1です
| 1300個の各ファイル(各サンプル)が60483の項目に対する固有の値を持っていて、
| その値を個々のファイルから取り出して一つのテキストファイルに結合する、という意味です。
| 60483×1300のテーブルになっている一つのtxtファイルをつくるということです。
No.2に書いたコマンドでそのとおりの動きになると思いますが、
なにか読み間違えてるのでしょうか・・・
こんな感じで理解しました
ファイルその1 ./0001/aaaa.txt
中身 1a,2a,3a,4a,5a,6a.....60483a
・・・
ファイルその1300 ./1300/aaaa.txt
中身 1z,2z,3z,4z,5z,6z.....60483z
出力 text.txt
中身
1a,2a,3a,4a,5a,6a.....60483a
1b,2b,3b,4b,5b,6b.....60483b
(略)
1z,2z,3z,4z,5z,6z.....60483z
と、1300行できるイメージです。
早速ありがとうございます。
60483項目に対する各ファイルの値だけ取り出して、列数を増やす形(横に伸びるというか)で追加していき、一つのファイルにまとめたいです。
ファイルを添付したいのですが、再度質問し直させてください!
No.2
- 回答日時:
No.1です
| 今いるディレクトリに1300個のフォルダがあって、そこに一つずつtxtファイルが入ってます。
ディレクトリの深さが1なら、
cat */*.txt > text.txt
早速ありがとうございます。
私の質問が悪くてすみません。
説明不足ですみません。
1300個の各ファイル(各サンプル)が60483の項目に対する固有の値を持っていて、その値を個々のファイルから取り出して一つのテキストファイルに結合する、という意味です。
60483×1300のテーブルになっている一つのtxtファイルをつくるということです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/03 13:18
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- UNIX・Linux Linuxについて質問です。 以下のhistoryの出力結果から、sedコマンドのファイル名tmp1 1 2023/02/03 20:11
- その他(プログラミング・Web制作) ファイル名の一部をbatで変更したい batファイルを使って、以下のようにファイル名の一部を変更した 3 2023/02/21 20:09
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- その他(プログラミング・Web制作) フォルダ内の特定 拡張子のファイルを一括実行するBat ファイルについて 4 2022/04/17 09:51
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/02/05 09:55
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 入力待ちをして、受け取った正の整数が表す行数だけ既存 4 2022/07/05 10:12
- Visual Basic(VBA) VBAでエクセルをtxtに変換するとエクセルでカンマを含む文字数字がtxtでは「""」付にならないよ 1 2022/08/27 12:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトでファイル...
-
OSXで常に最後に表示される文字...
-
OSX用のファイル結合ソフト
-
大量のtxtファイルを一つのtex...
-
コマンドプロンプト net user...
-
バッチで特定文字が含まれる先...
-
BATファイルによるfcコマンドで...
-
UNIXで、ディレクトリを比較し...
-
Fedora Core 2 のコマンド
-
cshでfindした一覧をタイムスタ...
-
【DOSコマンド】for文の中で変...
-
viで、2つのファイルを一つの...
-
Perl:あるファイル名が指定の...
-
trコマンドについて
-
シェルスクリプトでエラーが出ます
-
○行目から□行目だけを表示する...
-
【Linux】findコマンドの表示順
-
Dirコマンドでフォルダ内ファイ...
-
grepでの日本語検索
-
ファイル名についている「-」と...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
シェルスクリプトでエラーが出ます
-
【DOSコマンド】for文の中で変...
-
スラッシュ"/"を削除したい
-
renameコマンドでファイル名か...
-
UNIXで、ディレクトリを比較し...
-
バッチで特定文字が含まれる先...
-
【Linux】findコマンドの表示順
-
Linuxで*をつかってファイル移...
-
*.txtファイルの最終行だけ参照...
-
DOSでテキストファイルの中のあ...
-
OSXで常に最後に表示される文字...
-
BATファイルによるfcコマンドで...
-
○行目から□行目だけを表示する...
-
dosバッチを使用して昇順に
-
DOSバッチにて外のファイルの指...
-
unixのdiffコマンドの動作について
-
コマンドプロンプト net user...
-
ファイルの先頭に文字を追加す...
-
shellでsmbclientでファイル転送
-
行の挿入をおこなう。awk?
おすすめ情報