1

ああ、これは私が考えているよりも簡単でなければならないことを私は知っています:

3列の単純なスプレッドシートがあります。最初の列は私が興味を持っている列です。00から49までの値が含まれています。(これらの数字は、3番目の列の項目が該当するトピックを示しています。)

私がやりたいのは、これらの数字のそれぞれが発生する回数を数えることです。現在、私はこれを使用しています:

=SUM(COUNTIF(Sheet1!A2:A6716, {"00"}))

2枚目のシートで。動作しますが、手動で入力せずに値(00、01、02など)を入力する方法が見つかりませんでした。この関数を使用して次の列を反復処理することで不器用に実行すると思いましたが(基本的には00から開始しA1+1、塗りつぶしを実行します)、それはまったく機能しません。いくつかのバリエーションを試しました。

ご覧のとおり、ここにはかなりの数の行があり、カウントを自動化したいと思います。配列を作成する関数を使ってみましたが、動作しませんでした。また、これを行うピボットテーブルの作成方法もわかりません。

上記の式の最初の10(50トピックのうち)を入力すると、たとえば、最初の列に00、01の51行、02の277行などで始まる638行があることがわかります。

参考までに、最初の数行は次のようになります。

00   0.73,  10.2307/1496207
00   0.69,  10.2307/1496209
00   0.68,  10.2307/1496208

あなたがこれに到達するまで:

49   0.11   10.2307/1499809

興味のある人にとっては、2番目の列はドキュメント内のトピック(最初の列)の割合であり、3番目の列は各ドキュメントのDOIです。

ここからStackExchangeやGoogle検索結果からさまざまなソリューションを試しました。誰かが私がこれを考え抜こうとして明らかに見逃した1つの明白なことを私に見せてください。

4

2 に答える 2

3

私は使うだろう:

=COUNTIF(Sheet1!A2:A6716, ROW() - 1)

ROW()-1をオフセットに一致するように調整します。行3から開始する場合は、-2にする必要があります。

于 2012-12-21T01:21:52.380 に答える
1

これはうまくいかないのですか?

=COUNTIF(Sheet1!$A$2:$A$6716, 0)
=COUNTIF(Sheet1!$A$2:$A$6716, 1)
=COUNTIF(Sheet1!$A$2:$A$6716, 2)
=COUNTIF(Sheet1!$A$2:$A$6716, 3)

正しく行う必要があることを理解している場合は、SUM()を使用する必要はありません。COUNTIF()は機能するはずですが、最初の列にある一意の値ごとに1回実行する必要があります。最初の列の値が実際には数値ではなく文字列である場合は、次のようにする必要があります。

=COUNTIF(Sheet1!$A$2:$A$6716, "00")
=COUNTIF(Sheet1!$A$2:$A$6716, "01")
=COUNTIF(Sheet1!$A$2:$A$6716, "02")
=COUNTIF(Sheet1!$A$2:$A$6716, "03")

すべての値をカバーするまで。

于 2012-12-21T01:44:12.323 に答える