質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.02%
R

R言語は、「S言語」をオープンソースとして実装なおした、統計解析向けのプログラミング言語です。 計算がとても速くグラフィックも充実しているため、数値計算に向いています。 文法的には、統計解析部分はS言語を参考にしており、データ処理部分はSchemeの影響を受けています。 世界中の専門家が開発に関わり、日々新しい手法やアルゴリズムが追加されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

統計

統計は、集団現象を数量で把握することです。また、調査で得られた性質や傾向を数量的に表したデータのことをいいます。

Q&A

受付中

Python(またはR)による、Excelファイルのデータ抽出と統計解析について

phys
phys

総合スコア3

R

R言語は、「S言語」をオープンソースとして実装なおした、統計解析向けのプログラミング言語です。 計算がとても速くグラフィックも充実しているため、数値計算に向いています。 文法的には、統計解析部分はS言語を参考にしており、データ処理部分はSchemeの影響を受けています。 世界中の専門家が開発に関わり、日々新しい手法やアルゴリズムが追加されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

統計

統計は、集団現象を数量で把握することです。また、調査で得られた性質や傾向を数量的に表したデータのことをいいます。

2回答

0グッド

0クリップ

727閲覧

投稿2021/08/03 04:19

Excelファイルのデータ抽出について質問させてください。

収入出身地年齢
250,000葛飾区28
500,000新宿区45
850,000秋田市;神戸市;宮崎市63;32;35
300,000横浜市38
700,000新宿区;新潟市40;32

例えば、上記のような世帯月収、世帯構成員の出身地、世帯構成員の年齢が記載された数万世帯分のデータがあるとします。

Python(またはR)をもちいて、ここから

新宿区出身者を含む世帯の平均月収
秋田市出身者を含む世帯の平均月収
神戸市出身者を含む世帯の平均月収
etc

をファイルに記載された全ての出身地で求めるには、どのようにすればいいでしょうか。

全て一人世帯で、出身地を手入力できるようであればわかるのですが、ひと世帯に複数の出身地が記載され、どのくらいの出身地があるかも把握できないとなると、どのようにデータ抽出をすればいいのかわかりません。

解析を行うためのデータ抽出のプログラムについて、ご教授いただければ幸いです。

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

meg_

2021/08/03 04:28

質問者さんはどこまでコーディング出来ますか?ファイルの読み込みとか条件完全一致の抽出ならできますか?
can110

2021/08/03 05:20

複数の人が同じ出身の場合、出身地はどうなっていますか? 2人が秋田市、一人が神戸市の場合、「秋田市;神戸市」なのか「秋田市;秋田市;神戸市」なのか。
phys

2021/08/03 06:01

paythonは、数値計算や機械学習の入門書を読んで勉強した程度で、ファイルの読み込みはできますが、条件一致の抽出はやったことがありません。 2人が秋田、1人が神戸だった場合は、その世帯の月収(例えば700,000)を「[秋田市]+=700,000」、「[神戸市]+=700,000」と、それぞれの配列に同額を加えるようにしようと思っています。
meg_

2021/08/03 06:06

Rはどこまで出来ますか? ※今の質問の状態では丸投げと感じます
can110

2021/08/03 06:09

入力元であるExcelファイルの出身地の列がどうなっているか?という質問です。

回答2

0

プログラムを勉強したいというのでなければ、1個のプログラムでやるよりは、STEPを分けて以下のようにやるのが良いでしょう。自分でできない部分は、お金を払って誰かに頼むことも可能です。

  • STEP1 ファイル形式変換

Excelでxlsx形式ファイルを読み込んで、csv形式ファイルで出力する。

  • STEP2 ファイル形式変換

csv形式ファイルを入力として、KojiDoiさんの書いている列分解処理を行い、csv形式ファイルで出力する。
処理は適当なスクリプト言語で行う。awkとかsedでもできるしPythonでも可能。

  • STEP3 集計処理

csv形式ファイルを入力として、集計処理を行い、csv形式ファイルで出力する。
RやPython+pandasが適している。

プログラムを勉強したいのであれば、まずプログラミングの基礎をやることをお勧めします。

投稿2021/08/03 06:49

ppaul

総合スコア24620

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

0

まずは、このデータを、

850,000 秋田市;神戸市;宮崎市 63;32;35

次のように変換するスクリプトを書きましょう。

850000 秋田市 63 850000 神戸市 32 850000 宮崎市 35

pythonでもRでもどちらでも構いませんが、あなたの両言語のスキルに大差がないのであれば、まあpythonの方がやりやすいでしょう。

投稿2021/08/03 04:54

KojiDoi

総合スコア13438

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

phys

2021/08/03 06:07

一つの列に一つの字列しかないデータから、特定の文字列を含む行を抽出するやり方は調べて分かったのですが、一つの列内のセミコロンで区切られた文字列を抽出し、同じ行列の値と関連づける方法がわからなかったため、質問させていただきました。
KojiDoi

2021/08/03 06:45

やるべきことは抽出ではなく「分割」です。 pythonならsplitメソッド、Rならstrsplit関数を使えばいいです。あとは自分で調べてコードを組んでみましょう。

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.02%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

R

R言語は、「S言語」をオープンソースとして実装なおした、統計解析向けのプログラミング言語です。 計算がとても速くグラフィックも充実しているため、数値計算に向いています。 文法的には、統計解析部分はS言語を参考にしており、データ処理部分はSchemeの影響を受けています。 世界中の専門家が開発に関わり、日々新しい手法やアルゴリズムが追加されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

統計

統計は、集団現象を数量で把握することです。また、調査で得られた性質や傾向を数量的に表したデータのことをいいます。