痔になりやすい生活習慣とは?

1~40の任意の数値が入っている表から出現頻度が高いものから順に上位7位までの数値と回数を知りたいのですが、Excelでどうやれば可能でしょうか?

A 回答 (5件)

>データは行方向に40~50、列方向に5~200



ということですと、ピボットテーブルでは出来ませんね。
FREQENCE関数ではどうでしょう。

空いた列に1~40まで数値を入力します。
別シートでも出来ますので、仮にシート2のA1からA40に
1~40までの数値を入力しておきます。
B1~B40を選択して、
関数ウィザードの「統計」からFREQUENCYを選びます。

「データ配列」にデータの範囲を指定します。
「区間配列」にシート2のA1~A40を指定します。
Shift+Ctrl+Enterキーで確定します。

並べ替えは配列の一部を変更することになり出来ませんので、
A1~B40を選択してコピーし、空いたセルに値のみ貼り付けてから並べ替えます。

1位が3個あったら、次位は4位になってよいなら、RANK関数で
値を貼り付けた列がD、E列で、F列にランクを表示するとして、
F1に
=RANK(E1,$E$1:$E$40,0)
として、下方向にフィルします。
    • good
    • 1

別シートで計算したほうがやりやすいかと、並べ替えとかこうりゅすると。

データ値が1からいくつまであるかわからない場合A1に=ROW()をB1に=COUNTIFを入れたらオートフィルでいくつでも対応出来ます。範囲に名前を定義しておくと範囲が変わった時の修正も楽じゃないかな?ピボットはもっと楽だけど。
    • good
    • 0

「上位7位」とのことだけど、同順位のものが複数個あった場合はどうしたいですか?


極端な例では、一位が8個、二位が1個、三位が5個とかの場合は、を尋ねています。
    • good
    • 0
この回答へのお礼

上記の例で言えば一位を8個、一位が3個、二位が6個なら二位6個まで表示したいです。

お礼日時:2006/07/14 21:51

ピボットテーブルで出来ると思います。



タイトル行が必要ですので、最上行にタイトルをつけます。
データのあるセルを一つ選択して、
「データ」-「ピボットテーブル~」を選択します。

ピボットテーブルウィザードでタイトルのボタンを
「行のフィールド~」と「データアイテム」にドラッグします。

「合計」になっていたら、右クリックで「フィールドの設定」を選び、
「集計の方法」を「データの個数」にします。

「計」の数値のセルを選択して、降順に並べ替えます。
順位表示が必要なら、右隣の列にRANK関数で順位をつけます。
    • good
    • 1

どのセルにどういうデータがあるのか、よく分かりませんので、概念だけになりそうですけど



1.countif文で、1~40の出現頻度を計算
2.large文で、上位7つを選び出す
(vlookup文で、順位順に並べる?)

というような構成でできそうに 感じました。
    • good
    • 0
この回答へのお礼

データは行方向に40~50、列方向に5~200と不定ですが、教えていただいた関数を使えばなんとかなりそうですね。
ところで参考までにですが、仮にデータ数値が不定となりあらかじめcountifに固有の条件を書けなくなった場合に対処の方法ってありますか?

お礼日時:2006/07/14 21:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QEXCELのシート上に入力された文字列の数(出現数)を自動集計するには?

日々の株式銘柄の値上がり/値下がりのデータをエクセルシートに入力しています。
このデータに対し、銘柄AAA,BBB,CCC……毎に
 AAA銘柄の出現数
 BBB銘柄の出現数
  以下 同様CCC、DDD
と、自動的に出現する数をカウントしたいのですがEXCELの関数をどのように設定すればいいのでしょうか?

現在は、その銘柄を元に「検索」をかけ、目視で計算しているのですが時間がかかってたまりません。
どうぞよろしくお願い致します。
  

Aベストアンサー

こんばんは!
参考になるかどうか判りませんが・・・

元データがどのような感じか判りませんので
勝手に↓のような表を作ってみました。

元データの横に作業用の列を使わせてもらっています。

作業列のA2セルに
=IF(COUNTIF($B$2:B2,B2)=1,ROW(A1),"")
としてずぃ~~!っとオートフィルで下へコピーします。
(D・E列の数式が10000行まで対応できるようにしていますので、そのくらいまでコピーしても構いません)

そして、D2セルに
=IF(COUNT($A$2:$A$10000)<ROW(A1),"",INDEX($B$2:$B$10000,SMALL($A$2:$A$10000,ROW(A1))))

E2セルに
=IF(D2="","",COUNTIF($B$2:$B$10000,D2))

として、D2・E2セルを範囲指定し、E2セルのフィルハンドルで
下へコピーすると画像のような感じになります。

これでB列に新しい銘柄が出現してもちゃんと対応すると思います。

以上、参考になれば幸いですが、
的外れなら読み流してくださいね。m(__)m

こんばんは!
参考になるかどうか判りませんが・・・

元データがどのような感じか判りませんので
勝手に↓のような表を作ってみました。

元データの横に作業用の列を使わせてもらっています。

作業列のA2セルに
=IF(COUNTIF($B$2:B2,B2)=1,ROW(A1),"")
としてずぃ~~!っとオートフィルで下へコピーします。
(D・E列の数式が10000行まで対応できるようにしていますので、そのくらいまでコピーしても構いません)

そして、D2セルに
=IF(COUNT($A$2:$A$10000)<ROW(A1),"",INDEX($B$2:$B$10000,SM...続きを読む

Qエクセル STDEVとSTDEVPの違い

エクセルの統計関数で標準偏差を求める時、STDEVとSTDEVPがあります。両者の違いが良くわかりません。
宜しかったら、恐縮ですが、以下の具体例で、『噛み砕いて』教えて下さい。
(例)
セルA1~A13に1~13の数字を入力、平均値=7、STDEVでは3.89444、STDEVPでは3.741657となります。
また、平均値7と各数字の差を取り、それを2乗し、総和を取る(182)、これをデータの個数13で割る(14)、この平方根を取ると3.741657となります。
では、STDEVとSTDEVPの違いは何なのでしょうか?統計のことは疎く、お手数ですが、サルにもわかるようご教授頂きたく、お願い致します。

Aベストアンサー

データが母集団そのものからとったか、標本データかで違います。また母集団そのものだったとしても(例えばクラス全員というような)、その背景にさらならる母集団(例えば学年全体)を想定して比較するような時もありますので、その場合は標本となります。
で標本データの時はSTDEVを使って、母集団の時はSTDEVPをつかうことになります。
公式の違いは分母がn-1(STDEV)かn(STDEVP)かの違いしかありません。まぁ感覚的に理解するなら、分母がn-1になるということはそれだけ結果が大きくなるわけで、つまりそれだけのりしろを多くもって推測に当たるというようなことになります。
AとBの違いがあるかないかという推測をする時、通常は標本同士の検証になるわけですので、偏差を余裕をもってわざとちょっと大きめに見るということで、それだけ確証の度合いを上げるというわけです。

QExcel 指定した範囲内に、特定の単語が何回出現するか数える

アンケートの集計をExcelでやっておりまして、複数回答が可能な質問の集計に困っております。
選択肢は「今年」「来年」「再来年」「未定」。
データは以下のように並んでいる状態で、選択肢各々の数をカウントしたいと思います。

A1: 今年 来年
A2: 来年
A3: 来年 再来年
A4: 再来年
:
:
「今年」や「未定」、また「再来年」の「再」はユニークな文字列または文字なので、countifを使って求めることができておりますが、
「来年」の数をどのように求めるか、非常に悩んでおります。
検索を駆使して色々調べたのですが数日悩んでも無理でした。。
どなたかお助けいただけないでしょうか。よろしくお願いします!

Aベストアンサー

http://support.microsoft.com/kb/213889/ja

この方法で可能です。

=SUM(LEN(A1:A7)-LEN(SUBSTITUTE(A1:A7,"来年","")))/LEN("来年")-SUM(LEN(A1:A7)-LEN(SUBSTITUTE(A1:A7,"再","")))/LEN("再")

と入力後CTRL+SHIFT+ENTERを押して確定して下さい。

Qエクセルで条件に一致したセルの隣のセルを取得したい

下のような「得点」という名前のシートがあります。
(「田中」のセルがA1です。)

 [ 田中 ][ 10 ][ 200 ]
 [ 山田 ][ 21 ][ 150 ]
 [ 佐藤 ][ 76 ][ 250 ]
 [ 鈴木 ][ 53 ][ 350 ]

別のシートのA1セルに、「佐藤」と入力すると、

 [ 佐藤 ]

「得点」シートから「佐藤」の列を見つけて、B1、C1に

 [ 佐藤 ][ 76 ][ 250 ]

のように表示させたいのですが、B1、C1にはどのような式を書けば良いのでしょうか。
「得点」シートでは氏名が重複する事はありません。
IF文を使うと思うのですが、いまいち良く分かりませんでした。

よろしくおねがい致します。

Aベストアンサー

こんにちは!
VLOOKUP関数で対応できます。
IF関数と併用すればエラー処理が可能です。

Excel2007以降のバージョンであれば
B1セルに
=IFERROR(VLOOKUP($A1,得点!$A:$C,COLUMN(B1),0),"")
としてC1セルまでオートフィルでコピー!
そのまま下へコピーすると行が2行目以降でも対応できます。

Excel2003までの場合は
=IF($A1="","",VLOOKUP($A1,得点!$A:$C,COLUMN(B1),0))

としてみてください、m(_ _)m

Qエクセルで使用頻度の高い数字を順にだしたい

ロト6で過去に出た数字をエクセルにしましたが、
多くでた数字を順に表示したいと考えています。
どのような関数を使えばいいでしょうか?

Aベストアンサー

数字データを入力しているシートの名前が 「ロト6」としたとき
別シートに
●セルA1,A2~に→1,2,3,4,5,・・・・,42,43と入力
●セルB1に  =countif(ロト6!検索範囲,A1) B2,B3~B43までコピペ
このとき検索範囲は、6個の数字までにするか、7個までにするか選択
おそらく6個になると思いますが・・・・データが増えていくので、列範囲指定の方がいいでしょう。(例えば B:G というように)

でB列に、セルA1の数字が シート「ロト6」に何個あるかをカウントし表示

●セルC1に、 RANK関数で B列の範囲指定し(固定なので 列$行$にして)、セルB1の数字が何番目になるか表示させる。
      =rank(B1,$B$1:$B$43)   でこれを C2,C3~C43までコピペ
個数が多いものから1(位)、2(位)、3(位)、・・・・というように表示

このC列の結果を使って 順位の高い方から数字を見つけるようにすればいいかなと・・・
_______________________________
以上の様にした理由は、カウント個数が同数になる場合が出てくるので。(順位だと同順)

数字データを入力しているシートの名前が 「ロト6」としたとき
別シートに
●セルA1,A2~に→1,2,3,4,5,・・・・,42,43と入力
●セルB1に  =countif(ロト6!検索範囲,A1) B2,B3~B43までコピペ
このとき検索範囲は、6個の数字までにするか、7個までにするか選択
おそらく6個になると思いますが・・・・データが増えていくので、列範囲指定の方がいいでしょう。(例えば B:G というように)

でB列に、セルA1の数字が シート「ロト6」に何個あるかをカウントし表示

●セルC1に、 RAN...続きを読む

Qエクセルで、条件に一致した行を別のセルに抜き出す方法

エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。

たとえば、

<A列> <B列> <C列>
7/1 りんご 100円
7/2 ぶどう 200円
7/2 すいか 300円
7/3 みかん 100円

このような表があって、100円を含む行をそのままの形で、
別のセル(同じシート内)に抜き出したいのですが。

7/1 りんご 100円
7/3 みかん 100円

抽出するだけならオートフィルターでもできますが、
抽出結果を自動的に、別の場所に、常に表示させておきたいのです。

初歩的な質問だと思いますが、検索しても分からなかったので、よろしくお願いします。

Aベストアンサー

同じ質問が結構よく出てますが、そんなに初歩的でもありません
別シートのA1セルに「100円」と入力し、そのシートの任意のセルに以下の式を貼り付けて下さい。後は、下方向、右方向にコピー。
日付のセル書式は「日付」形式に再設定してください

=IF(COUNTIF(Sheet1!$C:$C,$A$1)>=ROW(A1),INDEX(Sheet1!A:A,LARGE(INDEX((Sheet1!$C$1:$C$500=$A$1)*ROW(Sheet1!$C$1:$C$500),),COUNTIF(Sheet1!$C:$C,$A$1)-ROW(A1)+1)),"")

データ範囲は500行までとしていますが、必要に応じて変更して下さい

QExcelで文字列の中から特定の文字の出現回数を数える

いつもお世話になっています。
また皆さんのお知恵を拝借させて下さい。

Excelで、複数のセルに入力されている文字列の中から特定の文字だけ
の個数を数えるにはどのような方法があるでしょうか。
例:
A1セル あ
A2セル あいう
A3セル あう
A4セル いう
※セル毎の文字数は一定ではありません。

上記のような場合で、「あ」は3個、「い」は2個、「う」は3個というように
特定の文字の出現回数を数えたいのです。できればVBAやマクロではなく、関数がいいのですが・・・
よろしくお願いします。

Aベストアンサー

検索結果を表示させたいセルに、
=countif(A:A,"*あ*")
で、できると思います。

Qエクセルで重複しているデータの抽出のしかたを教えてください。

エクセルで重複しているデータを抽出したいのですが・・。なにぶん初心者なもので簡単な方法があればよいのですが・・。
A列に日付 B列に企業名このデータが300件ほどあります。

 Å列      B列
1月 1日    AAAA社
1月 4日   BBBB社
1月 8日   CCCC社
2月 1日   BBBB社
2月20日    DDDD社
3月 2日   AAAA社

と、あるとしてB列の企業名が重複しているものを抽出したいのですが・・・。この場合 AAAA社とBBBB社ですが。
これを簡単に抽出する方法はないでしょうか?
教えてください お願いいたします。

Aベストアンサー

企業名がセルB2からセルB300まで入力されていると仮定します。
セルC2に IF(COUNTIF($B$2:B2,B2)>1,"*","") を入力し、セルC300までコピーして下さい。すると重複したデータの二番目以降に "*" のマークが付きます。
(注) 数式を下のセルまでコピーするため、COUNTIF($B$2 は絶対参照にして下さい。

QExcel 指定の文字列を含むとカウントするようにしたい場合は?

ただいまエクセルと格闘中の初心者です。
関数等はオートSUMくらいしか使ったことがなく、必要時にいちいち調べているような状態です。
今回は文字列を含むとカウントするところで躓いております。

表の中から特定の文字列を含むとカウントするようにしたい時COUNTIFを使うと思うのですが、この場合正確にその言葉じゃなければカウントされませんよね?

例えば「ボールペン」「サインペン」「シャープペン」のようなペン類をまとめてカウントしたい時、ペンだけで認識してくれるようにすることは可能なのでしょうか?
COUNTIF関連で探してみているのですが、中々思うような検索ができていません(もしくはわからずに見逃しているのかも?)

エクセルにお詳しい方、アドバイスを頂ければと思います。
よろしくお願い致します。

Aベストアンサー

検索条件に「*ペン*」としてみてはいかがですか。

ちなみに上記は「ペン」がどこかにあるものを対象とする。
「*ペン」は文字列がペンで終わるものを対象にする。
「ペン*」は文字列がペンで始まるものを対象とする。

Qエクセルでの指定文字 カウントについて

エクセルで並んだデータでの指定した名前だけの個数をカウントするにはどうすればいいのでしょうか?

山田 高橋 佐藤
高橋 梅田 赤田
 西 山田 梅田
佐藤 山田 梅田

名前が並んだデータで「高橋」という名前が何個あるのかをカウントしたいのですがどうすればいいのでしょうか?

Aベストアンサー

 データは入力されているセルの範囲を「A1:C4」とすれば、

=COUNTIF(A1:C4,"高橋")


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング