問題タブ [uniq]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - bashのファイルから単語の出現を計算します
非常に初心者の質問で申し訳ありませんが、私はbash
プログラミングに少し慣れていません(数日前に開始しました)。基本的に私がやりたいのは、あるファイルに別のファイルのすべての単語の出現を保持することです
私はこれができることを知っています:
その後、2番目のファイルを取得し、オカレンスを再度計算して、最初のファイルを更新します。3番目のファイルを取得した後など。
私が現在行っていることは問題なく機能しますが(私は、、を使用しgrep
てsed
いawk
ます)、かなり遅いように見えます。
を使用して、コマンドなどを使用するだけで非常に効率的な方法があると確信していますが、uniq
理解できません。
私を正しい道に導いていただけませんか。
書いたコードも貼り付けています。
linux - 「uniq」が同じ単語を異なるものとしてカウントするのはなぜですか?
単語が1行ずつあるファイルから単語の頻度を計算したいと思います。ファイルは非常に大きいので、これが問題になる可能性があります(この例では300k行をカウントします)。
私はこのコマンドを実行します:
問題は、それが私に小さなバグを与えることです:それは同じ単語を異なるものと見なします。
たとえば、最初のエントリは次のとおりです。
あなたがgiochi
見ることができるように2回繰り返されます。
ファイルの下部ではさらに悪化し、次のようになります。
すべての言葉のために。
私は何が間違っているのですか?
bash - bashスクリプトでuniq -cdを使用して、行ではなくカウントのみを抽出する方法は?
.sh
ログファイルを取得してデータを抽出し、レポートを作成するファイルがあります。全回線のうち、エラー ポップアップ (トップ トーカー) が発生する割合を計算したいと思います。
これまでのところ、私はこれを持っています:
これは 2 つの列を出力し、カウントの後に行が続きます。
計算を行うためにカウントだけを取るにはどうすればよいですか。例えば。count / total_lines = 0.000000
...
bash - 列の一意の値ごとに行全体を 1 回出力する (Bash)
これは確かに些細な作業であるに違いありませんが、awk
今朝は頭を悩ませていました。次のような形式のファイルがあります。
列 2 のペプチドの個別の値ごとに行を出力したいと思います。つまり、上記の入力は次のようになります。
これは私がこれまでに試したことですが、明らかに私が必要としているものもありません:
最後にもう 1 つ、他のペプチドの部分文字列であるペプチドを個別の値 (VSSILED と VSSILEDKILSR など) として扱う必要があります。ありがとう :)
excel - qlikview 構文 - 一意のキー
a、b、c、keyの4つのフィールドを持つExcelファイルがあります。各行 a、b、c にキーのみがあることを QV スクリプトでチェックインする必要があります。異なるキーを持つ行が結果になるはずです。たとえば、これは私がキャッチする必要がある不正確な状況です:
キー | c | b | a
111 | テスト3 | テスト2 | テスト1
222 | テスト3 | テスト2 | テスト1
誰でもqlikviewでどのように行うことができるか考えていますか?
ありがとう、レナ。
linux - Unixコマンド「uniq」&「sort」
私たちが知っているように
ソートされたfile1から重複する隣接行を削除します。オプション-cは、各行を1回出力し、それぞれのインスタンスをカウントします。したがって、次の結果が得られた場合:
そして、「sort -1knr」を使用して上記のデータを並べ替えると、結果は次のようになります。
本の名前だけをこの順序(番号なし)で出力する方法を教えてもらえますか?
unix - Unix uniq、sort&cutコマンドで重複行を削除
次の結果が得られた場合:
最初のフィールド (書籍名) のみを比較し、最大数を記録する各書籍の最初の行を除いて重複行を削除します。したがって、結果は次のとおりです。
uniq、sort、cutコマンドを使用してどうすればよいか、誰か助けてもらえますか? tr、head、または tail を使用している可能性がありますか?
linux - 多くのcsvファイルから重複を削除
n 個の csv ファイルがあり、合計するとサイズが 100 GB になる場合、次のルールと条件に基づいて重複する行を削除する必要があります。
- csv ファイルには 1.csv から n.csv の番号が付けられており、各ファイルのサイズは約 50MB です。
- 最初の列は文字列キーです。最初の列が同じ場合、2 つの行は重複していると見なされます。
- 重複を後のファイルに保持して重複を削除したい (2.csv は 1.csv よりも遅いと見なされます)
私のアルゴリズムは次のとおりです。より良いアルゴリズムがあるかどうかを知りたいです。
すべてのファイルを 1 つの巨大なファイルにマージする
/li>csvを並べ替える
/li>この時点で重複を排除する方法がわかりません。
uniq
最初の N フィールドをスキップする -f フラグがありますが、私の場合は最初の 1 フィールドを除くすべてをスキップしたいと考えています。
最後のステップ (ソートされたファイルの重複を排除する) について助けが必要です。また、より効率的なアルゴリズムはありますか?
unix - 3 つの列が同一の場合は行を削除します
タブ区切りのファイルがあり、最初の 3 列のみが同一である行を削除 (1 つのコピーを保持) したいと考えています。私は awk や uniq などの unix を使用してこれを行うことを好みます。
入力ファイル:
出力:
perl - Perl の大文字と小文字を区別しない一意の配列要素
モジュール List::MoreUtils によってエクスポートされた uniq 関数を使用して、配列内の uniq 要素を検索しています。ただし、大文字と小文字を区別しない方法で一意の要素を見つけてほしい。どうやってやるの?
Data::Dumper を使用して配列の出力をダンプしました。
出力:
予想される出力は次のようになります: john, john john
2 つの要素のみ。残りはすべて同じ単語であるため、フィルタリングする必要があります。大文字と小文字の違いのみです。
大文字と小文字を区別せずに重複した要素を削除するにはどうすればよいですか?