レポート提出課題 応用情報処理II(2016)

以下の課題のうち、3つを行うこと。Excelのブックファイルなど、完成したファイルをNetBoxにアップすること。Excelで提出する場合、課題1を除き、必要なことはExcelのファイル内に記載すること。

送付するファイルは次の要件を満たしていることを原則とする。

ファイルを添付する場合には、圧縮はしなくてもかまわない。なお、Macで課題を作成した人は、メールの文面でその旨を伝えること。Macを使っていても、上記のファイル名の規則を適用すること。

提出したことは、以下の書式のメールで必ず講師まで知らせてください。メールで知らせない場合には採点しないので、提出したことにはなりません。

課題の締め切りは:2017年2月5日(日曜日)とします

日本時間で2月5日中であればいいとします。もちろん、それ以前に提出してもらってもかまいません。遅れた場合には採点できず、不合格になります。

提出結果については、指導が入ることがあります。指導はメールで送ります。ない場合もあります。

受け取ったかどうかは、講義のホームページで随時公開します。


課題1

第9回の講義で「ネ申エクセル問題」についての論文とその内容を紹介した。論文に書かれている内容のうち、「ネ申エクセル問題」はどういう問題で、何をすれば解決できるのかを要約すること。これらを受けて、自分自身は何ができるのかを考え、その意見を述べること。この問題については、ワープロのファイルでの提出とする。長さはA4で1枚程度を目指せば良いが、過剰に少なくない限りは分量は問わない。(本課題は、Wordの文書ファイルで提出すること)

課題2

accessdata3.txtこのリンクにあるテキストデータを、いったんファイルに保存すること。このデータは、講師が運営している郵便番号検索のページおよびiPhoneアプリケーションから、2015/11/1〜7の7日間に行われた検索結果を取り出したものである。非常にサイズがでかいファイルなので注意すること。技術的にはWebサーバのログというもの。簡単に言えば、1回のWebサーバーアクセスで、このテキストファイルに1行がサーバに残るという仕組みである。

このデータをワークシートに展開すること。つまり、行列に分割されてデータが配置されるようにまずデータの読み込みを行うこと。いろいろやり方があるが、データタブの外部データの取り込みにあるテキストファイルなんていうのをやってみてはどうだろうか。

データの各列は次の意味を持つ。1行目に行を作り、見出しを適当に定めること。なお、実際には、後に示す問いに関わる部分以外は大雑把な状態でも構わない。

意味 備考
1 IPアドレス 検索をした人のパソコンのIPアドレス
2,3 ユーザ名/パスワード アクセス制限をしていないので、すべて「-」のはず
4 日付と時刻 検索が行われた日付および時刻
5 ページ この記述でどのタイプの検索が行われたかがわかる。(以下のものと異なるデータもあるが、それは無視することにする)
  • /yubin/getzip.php:Webサイトの市区町村名から郵便番号を検索(1回の検索で1行)
  • /yubin/getzip5.php:Webサイトの地名から郵便番号/郵便番号から地名を検索(1回の検索で1行)
  • /yubin/getzip6.php:iPhoneアプリケーションからの検索(1回の検索で通常は複数行、以下を参照)
6 結果コード 200は正しく結果を表示したことを示す
7 バイト数 転送したバイト数

次の値を求めよ

iPhoneアプリケーションからの検索結果は、以下のように、getzip6.phpが該当するキーワードですが、同じような文字が続いています。c=以降に検索文字、d=4はそのうちの何文字を利用するかを指定したものです。d=4の前にある&は、区切り文字です。ここで、c=XXXXXX&d=N(N=2,3,...n)となっているそれぞれの行は同一の検索によりアクセスです。つまり、1回の検索で、以下の4行が残りますが、この4行を持って、「1回」の検索とするものとします。ヒントは、「c=」と「&」の間の文字列が前の行と同じなら、カウントしないというような仕組みをうまくExcelで作ればいいでしょう。

61.21.208.79 - - [01/Nov/2015:00:00:23 +0900] "GET /yubin/getzip6.php?c=%E6%97%A5%E9%87%8E%E5%B8%82%E7%A5%9E%E6%98%8E&d=5 HTTP/1.1" 200 566
61.21.208.79 - - [01/Nov/2015:00:00:23 +0900] "GET /yubin/getzip6.php?c=%E6%97%A5%E9%87%8E%E5%B8%82%E7%A5%9E%E6%98%8E&d=4 HTTP/1.1" 200 674
61.21.208.79 - - [01/Nov/2015:00:00:24 +0900] "GET /yubin/getzip6.php?c=%E6%97%A5%E9%87%8E%E5%B8%82%E7%A5%9E%E6%98%8E&d=3 HTTP/1.1" 200 2978
61.21.208.79 - - [01/Nov/2015:00:00:24 +0900] "GET /yubin/getzip6.php?c=%E6%97%A5%E9%87%8E%E5%B8%82%E7%A5%9E%E6%98%8E&d=2 HTTP/1.1" 200 7797

ヒント:日付と時刻の混じったデータから日付だけを取り出すのはINT関数を使う。だが、このサンプルデータの場合には、DAY関数を使ってもよい。時刻を取り出すのはHOUR関数を使う。

課題3

日本統計年鑑(粘土はどれでも良い)の中にある「第19章 労働・賃金」には、様々なExcelのデータがある。ここにある「賃金」(19-9〜19)のセクションから任意にデータを取り出してデータ処理を行ってみることにする。自分の好きなデータを使って、時系列のデータと、何らかの分類区分ごとのデータを探して整理して、少なくとも2つのグラフを作成すること。そして、どのデータを使い、何のグラフを作成したのかを説明し、加えてグラフから読み取れる傾向分析を記載すること。

課題4

総務省の統計データのページからたどるとさまざまな統計データが入手できる。たとえば、「統計でみる都道府県のすがた 2016」というリンクをクリックし、左の「目次」をクリックし、「I 市区町村編」をクリックすると、統計データが含まれるワークシートがダウンロードできる。その中にはたとえば、「安全」のワークシートには、都道府県ごとの消防署の数などの統計データがある。かなりたくさんのデータがあるが、「安全」のワークシートに限らず、総務省のページの中から任意のデータを選んで、自由に注目すべき統計データを選び、「もとデータ」「処理したデータ」「グラフ」を含み、データに関する解説を含んだレポートを作成すること。

課題5

Excelにある「Webクエリ」の機能を学習して利用できるようになっておく(「データ」タブにアイコンがある)。この機能を利用して、適当な書籍売り上げランキング、あるいはCDの売上ランキングなど、何らかのランキング系のサイトの情報をExcelに取り込めるようにする。そして、最低でも3回分の更新結果を取得して、縦方向に書籍あるいはCDタイトルを並べ、横方向に「公開日」等をならべ、それらが交わったところには、それぞれのランキングでの順位を記述する。ただし、縦方向は、調査した回数の中でのランキングの順に並べること。たとえば、3回の調査で、2位、4位、1位であれば、平均して7÷3=2.3....、5位、2位、12位なら19÷3=6.3...のような数値を求める。ランキング外の数値は無視する。たとえば、12位、24位、ランク外となっていれば、36÷2=18を数値として使うようにする。

課題6

ある食品製造会社では、大好評のお菓子「ネコも大好き〜マグロパイ」を製造しているが、次のような制約があるとする。

直営店での売り上げは、土日が多く平日は少ないものとする。つまり、火〜金は一定、土曜日曜も一定だが、土日の売り上げは平日の売り上げに対して一定の倍率であるとする。このとき、Excelのワークシート上で製造計画を立てる。なるべく破棄する製品が少なく(破棄数)なり、かつ、売れるはずなのに入荷できなかった数(機会損失数)を減らすことがができるかを考えることにする。なお、何らかの数値(たとえば土日の売り上げ数と平日の減少率など)については固定しなければならないが、どこかのセルに入れて変化できるようにする。