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

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

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

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

深層学習

深層学習は、多数のレイヤのニューラルネットワークによる機械学習手法。人工知能研究の一つでディープラーニングとも呼ばれています。コンピューター自体がデータの潜在的な特徴を汲み取り、効率的で的確な判断を実現することができます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

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

Q&A

2回答

689閲覧

pythonで行列のCSVのデータセットをつくり、ラべリングをつけたい

miotarou98

総合スコア4

CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

深層学習

深層学習は、多数のレイヤのニューラルネットワークによる機械学習手法。人工知能研究の一つでディープラーニングとも呼ばれています。コンピューター自体がデータの潜在的な特徴を汲み取り、効率的で的確な判断を実現することができます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

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

0グッド

0クリップ

投稿2020/01/15 01:00

前提・実現したいこと

7×4の行列のCSVファイルをデータセットで読み込み、その行列そのものに1つのラべリングをつけたいです。
例えば、test_dat.csvというファイルに
11.0467 11.9899 15.831 20.1135
23.0091 23.0818 23.6138 25.1582
-156.5356 -156.5356 -156.5356 -156.5356
9.2442 10.7812 15.7067 19.6347
-156.5356 -156.5356 -156.5356 -156.5356
-156.5356 -156.5356 -156.5356 -156.5356
-156.5356 -156.5356 -156.5356 -156.5356
のような行列があるtest_dat.csvがあります。

これを

f = np.loadtxt('/Desktop/test_dat.csv', delimiter=',', dtype='float64')

と定義して、出力させると

[[ 11.0467 11.9899 15.831 20.1135]
[ 23.0091 23.0818 23.6138 25.1582]
[-156.5356 -156.5356 -156.5356 -156.5356]
[ 9.2442 10.7812 15.7067 19.6347]
[-156.5356 -156.5356 -156.5356 -156.5356]
[-156.5356 -156.5356 -156.5356 -156.5356]
[-156.5356 -156.5356 -156.5356 -156.5356]]

となるのですが、
この行列を全部まとめて1つの0というラベリングをしたいです。
理想として、
[[11.0467 11.9899 15.831 20.1135
23.0091 23.0818 23.6138 25.1582
-156.5356 -156.5356 -156.5356 -156.5356
9.2442 10.7812 15.7067 19.6347
-156.5356 -156.5356 -156.5356 -156.5356
-156.5356 -156.5356 -156.5356 -156.5356
-156.5356 -156.5356 -156.5356 -156.5356] [0]]
ということにして0というラベルを使っていきたいです。

どうしたらいいでしょうか?

補足情報(FW/ツールのバージョンなど)

Python 3.7.4
Spyder 3.3.6

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

coco_bauer

2020/01/15 01:37

"ラべリングをつける"とは、どういう意味ですか? "理想として"示された例では、7×4の行列という重要な情報が失われていますが、支障にならないのですか?
miotarou98

2020/01/15 01:54

すみません、質問ありがとうございます。 まだ自分が浅い知識で混同させてしまいました。 上記のような7×4行列そのものに0という定義にしていきたいです。 そして似た数値の7×4行列を他にも数個用意し同じく0と定義し、学習させたいです。
tatamyiwathy

2020/01/15 04:54

7x4行列を0という情報でアクセスしたい、ということでしょうか。そうだとすると行列を数個用意して同様に0と定義する、となると行列の識別ができなくなってしまいますが問題ないのでしょうか。
miotarou98

2020/01/15 05:37

質問ありがとうございます。 行列の識別ができなくなるとのことですが、多分問題がでてくるかもしれないです。 学習用行列M群を用意してテスト用行列M'を読み込ませて各配列を参照して定義0かどうか推測させる ということがしたいのですが、前提条件だと難しいですかね。
guest

回答2

0

こういうことでしょうか?

Python

1import numpy as np 2 3a = np.array([[11.0467, 11.9899, 15.831, 20.1135],[23.0091, 23.0818, 23.6138, 25.1582]]) 4a = a.tolist() 5 6b = [[0]] 7 8print(a + b) 9#[[11.0467, 11.9899, 15.831, 20.1135], [23.0091, 23.0818, 23.6138, 25.1582], [0]]

投稿2020/01/26 10:50

meg_

総合スコア10580

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

理想として書かれているデータ構造とは異なってしまいますが、dictionaryを使うのではだめでしょうか?
(やろうとしてらっしゃることをしっかりと理解できていないため、見当違いでしたらすみません)

python

1f = np.loadtxt('/Desktop/test_dat.csv', delimiter=',', dtype='float64') 2 3d = {0: f} 4# 以降 d[0]で↑のarrayを引ける 5 6# ラベル1を追加したい場合 7d[1] = np.loadtxt(hoge, delimiter=hoge, dtype=hoge) # 適当なnp.arrayを追加 8

投稿2020/01/16 06:11

yusuken

総合スコア61

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

miotarou98

2020/01/16 07:14

回答ありがとうございます。 すみません、dictionaryについて調べたのですが、よくわからなかった部分があります。 d = {0: f} ってどういう処理してますか?
yusuken

2020/01/16 07:39

d= {0: f} は 0をkey, fをvalueとしたdictionaryを作るということです(とくにデータ処理をしているわけではないです)
yusuken

2020/01/16 07:49 編集

Pythonのinteractive shellでいじってみるのが良いと思います ```Python $ python # pythonのinteractive shell起動 >>> import numpy as np >>> f = np.loadtxt('test_dat.csv', delimiter = ',', dtype='float64') # お教えいただいたcsvファイルを用意 >>> d = {0: f} >>> d[0] array([[ 11.0467, 11.9899, 15.831 , 20.1135], [ 23.0091, 23.0818, 23.6138, 25.1582], [-156.5356, -156.5356, -156.5356, -156.5356], [ 9.2442, 10.7812, 15.7067, 19.6347], [-156.5356, -156.5356, -156.5356, -156.5356], [-156.5356, -156.5356, -156.5356, -156.5356], [-156.5356, -156.5356, -156.5356, -156.5356]]) >>> type(d) <class 'dict'> ```
miotarou98

2020/01/20 17:35

回答ありがとうございます. 教わった通りにいじってみたら大筋は理解できました. ほかに同じ行列のCSVも読み込ませてkeyを0として,0を目的変数にしてみたいのですが どうやったらいいか教えてほしいです. 0でまとめたいということです.
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問