このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。
エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで
前スレ
くだすれPython(超初心者用) その35
http://mevius.5ch.net/test/read.cgi/tech/1496411341/
VIPQ2_EXTDAT: checked:default:1000:512:----: EXT was configured
探検
くだすれPython(超初心者用) その36
■ このスレッドは過去ログ倉庫に格納されています
2018/01/01(月) 20:18:42.82ID:iOcRvNll
515デフォルトの名無しさん
2018/02/25(日) 01:33:29.46ID:pcyqC+jB Windows10 Home で、WSL で、MS Store から、Ubuntu 16.04 LTS をダウンロードして、
Ruby をインストールする
最初から、Python, vim も入っている
200MB ほどダウンロードして、850MB ほどの容量。
ただし、GUI版ではなく、基本的な機能しかないけど
だから、Windows10 Home でも、開発環境として、Ubuntu が使える。
ただし、サーバーのように常時実行はできない。
開発環境として使えるだけ
Docker も使えない
Ruby をインストールする
最初から、Python, vim も入っている
200MB ほどダウンロードして、850MB ほどの容量。
ただし、GUI版ではなく、基本的な機能しかないけど
だから、Windows10 Home でも、開発環境として、Ubuntu が使える。
ただし、サーバーのように常時実行はできない。
開発環境として使えるだけ
Docker も使えない
516デフォルトの名無しさん
2018/02/25(日) 01:54:33.31ID:jUteSjvv PythonはRubyとかいううんことは違ってUNIXに依存してないのでPythonでも普通に使えるよ
というかWinで使ってる人が一番多い
というかWinで使ってる人が一番多い
517デフォルトの名無しさん
2018/02/25(日) 05:52:54.87ID:z/Jlakx1 最近じゃネコも杓子も蛇使いな感じだな
518デフォルトの名無しさん
2018/02/25(日) 09:19:09.54ID:tVogG6Wu >>517
蛇使いてパイソンの事か?なんか困るん?パイソン流行ると?
蛇使いてパイソンの事か?なんか困るん?パイソン流行ると?
519デフォルトの名無しさん
2018/02/25(日) 11:18:47.46ID:V9Ffm6ai pythonが生産性高いと呼ばれる理由は?
520デフォルトの名無しさん
2018/02/25(日) 12:15:43.20ID:ZfD472TI 星占いで13番目に出てきた蛇使い座
521デフォルトの名無しさん
2018/02/25(日) 12:22:49.03ID:6Rr2IhVo522デフォルトの名無しさん
2018/02/25(日) 14:17:03.05ID:HxcqvxGx リストの演算やスライスが1文でまとめて出来ること、
pandasやmatplotlibの様な使いやすいモジュールがあること、かな
C#やC++の型宣言はvarやautoで推論出来るから、昔ほど面倒ではなくなってる
pandasやmatplotlibの様な使いやすいモジュールがあること、かな
C#やC++の型宣言はvarやautoで推論出来るから、昔ほど面倒ではなくなってる
523デフォルトの名無しさん
2018/02/25(日) 15:15:27.02ID:DMbXpP0c524デフォルトの名無しさん
2018/02/25(日) 16:09:26.99ID:raNwv933 python便利です
csv・xml出力の実験データのまとめとか
製品の異物確認にもopencv使えるし
使える使えないで仕事の処理量は段違い
惜しむのは40手前で出会った事
中学ぐらいでpython教えれば
高校の数学が面白くなるのになとおじさんは思いました
csv・xml出力の実験データのまとめとか
製品の異物確認にもopencv使えるし
使える使えないで仕事の処理量は段違い
惜しむのは40手前で出会った事
中学ぐらいでpython教えれば
高校の数学が面白くなるのになとおじさんは思いました
525デフォルトの名無しさん
2018/02/25(日) 16:18:04.88ID:DMbXpP0c そだねーjapan
526デフォルトの名無しさん
2018/02/25(日) 16:49:04.04ID:bfs3ZT86 昔は最初にやるべき言語はPASCALって言われていたが今はPythonだな
527デフォルトの名無しさん
2018/02/25(日) 17:51:58.41ID:tVogG6Wu >>523
どうせおまえもゴミみたいなもんなんやから気にすんなよそんな事w
どうせおまえもゴミみたいなもんなんやから気にすんなよそんな事w
528デフォルトの名無しさん
2018/02/25(日) 20:52:09.78ID:VufOLdYM529デフォルトの名無しさん
2018/02/25(日) 23:01:05.83ID:4H5jUe5i プログラミング自体が初めてで、pythonに興味を持って始めました。
1行4列の行列がnあります。要素は全て数字で、データの抜けはありません。
[100,50,250,300]
[101,20,150,150]
[101,30,200,150]
[102,80,100,200]
・
・
やりたいことは、n行4列の1つの行列にまとめたいです。
ただし、条件がありまして、1列目の要素同士が等しいときは、
1列目 そのまま 上の事例ですと、101
2列目 2列目の要素の合計 20+30=50
3列目 次の式で演算 Σ(2列目*3列目)/Σ(2列目)
(20*150+30*200)/(20+30)=180
4列目 そのまま 上の事例ですと、150
1列目の要素に重複がある場合、上のような演算をしながら、
行列に整理したいです。ですので、完成した行列の行は初めのn行より少なくなります。
完成形
[100,50,250,300]
[101,50,180,150]
[102,80,100,200]
すみませんが、ご教示いただけますよう、お願いします。
1行4列の行列がnあります。要素は全て数字で、データの抜けはありません。
[100,50,250,300]
[101,20,150,150]
[101,30,200,150]
[102,80,100,200]
・
・
やりたいことは、n行4列の1つの行列にまとめたいです。
ただし、条件がありまして、1列目の要素同士が等しいときは、
1列目 そのまま 上の事例ですと、101
2列目 2列目の要素の合計 20+30=50
3列目 次の式で演算 Σ(2列目*3列目)/Σ(2列目)
(20*150+30*200)/(20+30)=180
4列目 そのまま 上の事例ですと、150
1列目の要素に重複がある場合、上のような演算をしながら、
行列に整理したいです。ですので、完成した行列の行は初めのn行より少なくなります。
完成形
[100,50,250,300]
[101,50,180,150]
[102,80,100,200]
すみませんが、ご教示いただけますよう、お願いします。
530デフォルトの名無しさん
2018/02/25(日) 23:44:20.79ID:Uk0i7a7U >529
仕様が不明なところがあるので質問します。
1列目が同じだったら、4列目も必ず同じになるのですか?
もし、そうでない場合、4列目はどうやって計算するのですか?
仕様が不明なところがあるので質問します。
1列目が同じだったら、4列目も必ず同じになるのですか?
もし、そうでない場合、4列目はどうやって計算するのですか?
531デフォルトの名無しさん
2018/02/25(日) 23:54:15.75ID:4H5jUe5i >>530
不十分な書き方をして申し訳ありません。 今回の場合、1列目がそれぞれ等しい場合は、4列目もそれぞれ等しくなります。異なってしまうことはないという前提です。ですので、2列目、3列目で所定の演算をして、1列目の要素が等しいもの同士を集約します。
これでご理解いただけましたでしょうか。
もし何かございましたら、ご指摘ください。よろしくお願いいたします。
不十分な書き方をして申し訳ありません。 今回の場合、1列目がそれぞれ等しい場合は、4列目もそれぞれ等しくなります。異なってしまうことはないという前提です。ですので、2列目、3列目で所定の演算をして、1列目の要素が等しいもの同士を集約します。
これでご理解いただけましたでしょうか。
もし何かございましたら、ご指摘ください。よろしくお願いいたします。
532デフォルトの名無しさん
2018/02/26(月) 00:45:55.72ID:rDF2fLvE533デフォルトの名無しさん
2018/02/26(月) 00:49:05.69ID:rDF2fLvE いまはpythonの基礎的なことすらわからないのに>>529のようなのを
やる奴が普通なのか?
やる奴が普通なのか?
534デフォルトの名無しさん
2018/02/26(月) 03:11:45.17ID:RRYIMw3l 昔からいたよ
ここ2~3年までPythonは日本語圏でドマイナーだったから目につかなかっただけ
それまでのド素人はVBかPHPかRubyをやっていた
ここ2~3年までPythonは日本語圏でドマイナーだったから目につかなかっただけ
それまでのド素人はVBかPHPかRubyをやっていた
535デフォルトの名無しさん
2018/02/26(月) 06:35:30.76ID:CZMjr0z3 >>532
事務系社会人です。独学なので宿題ではないです。自分用の簡単なツールを作りたいというのがきっかけです。
始めはnumpyで、行列内部で要素の演算させるつもりでしたが、うまくできませんでした。
次にpandasで、表形式でやろうとしましたが、今一わかりません。
すみません、今日の夜にでも、不完全な自分のコード提示します。
お目通しいただきご教示くださるとありがたいです。
事務系社会人です。独学なので宿題ではないです。自分用の簡単なツールを作りたいというのがきっかけです。
始めはnumpyで、行列内部で要素の演算させるつもりでしたが、うまくできませんでした。
次にpandasで、表形式でやろうとしましたが、今一わかりません。
すみません、今日の夜にでも、不完全な自分のコード提示します。
お目通しいただきご教示くださるとありがたいです。
536デフォルトの名無しさん
2018/02/26(月) 07:24:03.85ID:GTfBnsec >>533
ブーメラン乙です
ブーメラン乙です
537デフォルトの名無しさん
2018/02/26(月) 07:37:58.92ID:IuGyHUGL >>524
Juliaを中学生から教えたらいい。sympy使えるし。
Juliaを中学生から教えたらいい。sympy使えるし。
538デフォルトの名無しさん
2018/02/26(月) 07:41:38.60ID:IuGyHUGL >>526
scratchからやったら。
scratchからやったら。
539デフォルトの名無しさん
2018/02/26(月) 07:56:08.70ID:yswRgVjF >>538
あれは言語というよりオーサリングツールな気がするな
あれは言語というよりオーサリングツールな気がするな
540遊園地
2018/02/26(月) 10:11:37.79ID:cTQBZcAI >>535
目的を人間っぽく書いて、その為の実現したいコード処理を記載
読み込んだデータ形式も簡易表現で構わないから、コードにコメント等で書いて。
numpyで、行列内部で要素の演算
どの様な演算なのか? 受け取るデータ形式は、どの状態なのか?
何が想定と違うのか?
pandasで、表形式
どの様な表なのか? 上記と同じ
コード書きや想像可能な命令後のキーワド検索は、後回し。
目的を人間っぽく書いて、その為の実現したいコード処理を記載
読み込んだデータ形式も簡易表現で構わないから、コードにコメント等で書いて。
numpyで、行列内部で要素の演算
どの様な演算なのか? 受け取るデータ形式は、どの状態なのか?
何が想定と違うのか?
pandasで、表形式
どの様な表なのか? 上記と同じ
コード書きや想像可能な命令後のキーワド検索は、後回し。
541デフォルトの名無しさん
2018/02/26(月) 10:19:53.48ID:oHOLuzwx なんかnumpyって使いにくいのよね
全部pandasでやっちゃう
計算速度とかは知らん
全部pandasでやっちゃう
計算速度とかは知らん
542デフォルトの名無しさん
2018/02/26(月) 12:29:30.85ID:wtxU8Pq4 >531
こんな感じかな?
https://ideone.com/mxwgP3
numpy panda なら、groupby?とかの集計用の関数を使うのだろうけど、
どちらも知らないので、素のpythonで書いた。
こんな感じかな?
https://ideone.com/mxwgP3
numpy panda なら、groupby?とかの集計用の関数を使うのだろうけど、
どちらも知らないので、素のpythonで書いた。
543デフォルトの名無しさん
2018/02/26(月) 14:50:55.91ID:Q2qtK4xZ 数字(str)
544デフォルトの名無しさん
2018/02/26(月) 14:51:52.89ID:ZymD9F8g ROSの勉強意味不明
545デフォルトの名無しさん
2018/02/26(月) 15:55:59.62ID:NcBRNf65 before_data = [[100,50,250,300], [101,20,150,150], [101,30,200,150], [102,80,100,200], [102,20,150,200]]
hashed_data = before_data.group_by { |row| row[0] }
#=> {100=>[[100, 50, 250, 300]], 101=>[[101, 20, 150, 150], [101, 30, 200, 150]], 102=>[[102, 80, 100, 200], [102, 20, 150, 200]]}
# 配列の蓄積器に、結果を入れながら、処理を繰り返す
result = hashed_data.each_with_object([]) do | (key, rows), ary |
if rows.length >= 2
puts "rows"
p rows
# 配列の蓄積器に、結果を入れながら、処理を繰り返す
r = rows.each_with_object([]) do | row, ary2 |
if ary2.length == 0
ary2.push *row # 展開
ary2[2] = row[1] * row[2]
else
ary2[1] += row[1]
ary2[2] = ary2[2] + row[1] * row[2]
end
end
r[2] = r[2] / r[1].to_f
ary.push r
else
ary.push rows.flatten
end
end
p result
Ruby で作った。結果
[[100, 50, 250, 300], [101, 50, 180.0, 150], [102, 100, 110.0, 200]]
hashed_data = before_data.group_by { |row| row[0] }
#=> {100=>[[100, 50, 250, 300]], 101=>[[101, 20, 150, 150], [101, 30, 200, 150]], 102=>[[102, 80, 100, 200], [102, 20, 150, 200]]}
# 配列の蓄積器に、結果を入れながら、処理を繰り返す
result = hashed_data.each_with_object([]) do | (key, rows), ary |
if rows.length >= 2
puts "rows"
p rows
# 配列の蓄積器に、結果を入れながら、処理を繰り返す
r = rows.each_with_object([]) do | row, ary2 |
if ary2.length == 0
ary2.push *row # 展開
ary2[2] = row[1] * row[2]
else
ary2[1] += row[1]
ary2[2] = ary2[2] + row[1] * row[2]
end
end
r[2] = r[2] / r[1].to_f
ary.push r
else
ary.push rows.flatten
end
end
p result
Ruby で作った。結果
[[100, 50, 250, 300], [101, 50, 180.0, 150], [102, 100, 110.0, 200]]
546デフォルトの名無しさん
2018/02/26(月) 16:23:21.61ID:B76OQfBv プログラミングのレポート課題としていいテーマありますか?
2週間くらいで0から理解できる内容で
機械学習とか候補に入ってるんですが2週間じゃキツイですか?
2週間くらいで0から理解できる内容で
機械学習とか候補に入ってるんですが2週間じゃキツイですか?
547デフォルトの名無しさん
2018/02/26(月) 17:30:55.40ID:noERqLSe >>545
汚いend糞コード貼るな!
汚いend糞コード貼るな!
548デフォルトの名無しさん
2018/02/26(月) 17:52:45.87ID:OBKUk/zi >>546
1. ユーザーが入力した何らかの文字列を受け取る
2. 1. の文字列が以前までに入力されたものと同じなら、そのときの回答と同じ回答を表示する
3. そうでない場合は、回答をユーザーに入力させ、入力内容を回答としてそのまま表示する
これで教師データに対しては精度100%のAIができる
2週間ならこんなもんだろ
1. ユーザーが入力した何らかの文字列を受け取る
2. 1. の文字列が以前までに入力されたものと同じなら、そのときの回答と同じ回答を表示する
3. そうでない場合は、回答をユーザーに入力させ、入力内容を回答としてそのまま表示する
これで教師データに対しては精度100%のAIができる
2週間ならこんなもんだろ
549デフォルトの名無しさん
2018/02/26(月) 18:08:45.28ID:91BhH+0u 今日からpythonを勉強し始めました
ここのfibo()関数が、fibo(37)ぐらいで恐ろしく時間がかかる(10秒ぐらい)んですが、
こんなものなんでしょうか?あまりに遅すぎると思うのですが。。。
試しにcで書き直したらfibo(37)が一瞬で終わりました。
環境:Windows10上のWSL+Ubuntu上のpython3.5.2、CPU corei7
https://qiita.com/Wreulicke/items/e8f7290f6b4ff98e6142
ここのfibo()関数が、fibo(37)ぐらいで恐ろしく時間がかかる(10秒ぐらい)んですが、
こんなものなんでしょうか?あまりに遅すぎると思うのですが。。。
試しにcで書き直したらfibo(37)が一瞬で終わりました。
環境:Windows10上のWSL+Ubuntu上のpython3.5.2、CPU corei7
https://qiita.com/Wreulicke/items/e8f7290f6b4ff98e6142
550デフォルトの名無しさん
2018/02/26(月) 18:22:50.71ID:wtxU8Pq4 数千万回の関数呼び出ししてるから、Pythonなら10秒くらいで正常。
100万回の単純な演算なら、1秒以内でいける。
1000万回の演算だと、かなり単純なのでも、1秒以内は厳しい、というのが相場かな。
cやc++よりは、50倍くらい遅いよ。
100万回の単純な演算なら、1秒以内でいける。
1000万回の演算だと、かなり単純なのでも、1秒以内は厳しい、というのが相場かな。
cやc++よりは、50倍くらい遅いよ。
551デフォルトの名無しさん
2018/02/26(月) 18:25:26.87ID:91BhH+0u552デフォルトの名無しさん
2018/02/26(月) 18:56:45.45ID:/Zv3SJNj 俺のPCだとフィボナッチ計算
Pythonでも0.1秒くらいで終わるけど。。。
Pythonでも0.1秒くらいで終わるけど。。。
553デフォルトの名無しさん
2018/02/26(月) 18:59:54.39ID:/Zv3SJNj しかも、CPU corei5のオンボロなんだけどw
どういうことやw
どういうことやw
554デフォルトの名無しさん
2018/02/26(月) 19:05:04.37ID:wtxU8Pq4 >551
科学計算するときは、numpy使うらしい。
>552
速いPC使ってるんだね。
うちのi7 では13.5秒かかった。
アルゴリズムを変えて、メモ化したり、ループに書き直したりすれば、一瞬で終わるけど。。
科学計算するときは、numpy使うらしい。
>552
速いPC使ってるんだね。
うちのi7 では13.5秒かかった。
アルゴリズムを変えて、メモ化したり、ループに書き直したりすれば、一瞬で終わるけど。。
555デフォルトの名無しさん
2018/02/26(月) 19:07:56.71ID:/Zv3SJNj556デフォルトの名無しさん
2018/02/26(月) 19:10:09.18ID:wtxU8Pq4 >553
corei3なの?
ideone.com で、pypy2.7で計算したら、0.56 secまで速くなったけど、0.1 sec には届かない。
リンク先のコードと違うので計算したのでは?
corei3なの?
ideone.com で、pypy2.7で計算したら、0.56 secまで速くなったけど、0.1 sec には届かない。
リンク先のコードと違うので計算したのでは?
557デフォルトの名無しさん
2018/02/26(月) 19:11:41.89ID:wtxU8Pq4 >555
行き違い失礼。
速度差は、デスクトップとノートPCの違いかな?
行き違い失礼。
速度差は、デスクトップとノートPCの違いかな?
558デフォルトの名無しさん
2018/02/26(月) 19:12:19.41ID:/Zv3SJNj >>556
自分で関数作ってたスマソ
自分で関数作ってたスマソ
559デフォルトの名無しさん
2018/02/26(月) 19:35:17.64ID:NcBRNf65 君ら、末尾再帰とか、lazy とかを、知らんだろ
560デフォルトの名無しさん
2018/02/26(月) 20:07:38.88ID:GTfBnsec あぁ、末尾再帰とか、lazyとかね、昔はよくやったよね懐かしいわw
まあ今は機械学習が全盛だし、もう末尾再帰とか、lazyとかの時代じゃないっしょw
まあ今は機械学習が全盛だし、もう末尾再帰とか、lazyとかの時代じゃないっしょw
561デフォルトの名無しさん
2018/02/26(月) 20:10:49.36ID:noERqLSe 末尾再帰はみみっちい、男らしくない考え。
そんなんだったら最初からforループ使っとけ
そんなんだったら最初からforループ使っとけ
562デフォルトの名無しさん
2018/02/26(月) 20:28:42.84ID:YPK1H5Uc Jupyterから実行したかどうか判定する方法ってあります?
563デフォルトの名無しさん
2018/02/26(月) 21:50:30.71ID:BkZJLYsg 質問文が酷すぎて答える気にもなれない
564デフォルトの名無しさん
2018/02/26(月) 21:59:17.46ID:mANSF+RP565デフォルトの名無しさん
2018/02/26(月) 22:21:56.94ID:/Zv3SJNj566デフォルトの名無しさん
2018/02/26(月) 22:30:00.38ID:QuhxkvaQ567デフォルトの名無しさん
2018/02/26(月) 23:12:09.84ID:JMtzX8TQ PythonやりたいならwindowsよりLinuxですか?
568デフォルトの名無しさん
2018/02/26(月) 23:30:50.93ID:Q2qtK4xZ569デフォルトの名無しさん
2018/02/26(月) 23:34:16.77ID:JMtzX8TQ >>568
githubでソース拾ってきて動かしたいです。
githubでソース拾ってきて動かしたいです。
570529=535
2018/02/26(月) 23:38:23.76ID:CZMjr0z3571529=535
2018/02/26(月) 23:41:34.76ID:CZMjr0z3 >>540 遊園地様
>>542様が回答を示していただきましたが、下記のとおり
私のポンコツコードを示したいと存じます。
再掲
[100,50,250,300]
[101,20,150,150]
[101,30,200,150]
[102,80,100,200]
・
・
目的
・ 1列目:商品コード、2列目:数量、3列目:仕入金額(単価)、1列目:販売金額(単価)です。
上記例では、数字を単純化しています。また実際は、重複含め100以上のデータ(行)があります。
・ 重複している商品コードを整理し、その場合、数量の合算、金額(単価)の加重平均を行い、
最終的に、きれいな行列に整理したい。
・ データはCSVで与えられている。
・ Excel上で計算やVBAも使用できるだろうが、CSVのデータを取込み、pythonの中?で計算して、結果を出してみたかった。
以下、連投します。すみません。
>>542様が回答を示していただきましたが、下記のとおり
私のポンコツコードを示したいと存じます。
再掲
[100,50,250,300]
[101,20,150,150]
[101,30,200,150]
[102,80,100,200]
・
・
目的
・ 1列目:商品コード、2列目:数量、3列目:仕入金額(単価)、1列目:販売金額(単価)です。
上記例では、数字を単純化しています。また実際は、重複含め100以上のデータ(行)があります。
・ 重複している商品コードを整理し、その場合、数量の合算、金額(単価)の加重平均を行い、
最終的に、きれいな行列に整理したい。
・ データはCSVで与えられている。
・ Excel上で計算やVBAも使用できるだろうが、CSVのデータを取込み、pythonの中?で計算して、結果を出してみたかった。
以下、連投します。すみません。
572529=535
2018/02/26(月) 23:47:35.71ID:CZMjr0z3 #coding: UTF-8
import pandas as pd
import numpy as np
nan = float("nan")
#データ読込
data = np.loadtxt('data.csv',delimiter=',',dtype='float',skiprows=0) #データ全体を読込
data_code = data[:,0] #データ全体から「商品コード」部分を取出す
df1 = pd.DataFrame(
{'CD': data[:,0],
'quantity':data[:,1],
'@': data[:,2]},
columns=['CD', 'quantity', '@'])
print(df1) # とりあえず、表みたいな形式になるか確認してみた
data_code = np.array(data_code.reshape(len(data_code),)) # 商品コードの重複を削除してみた
print(data_code)
# ここから重複のない純粋な商品コードをkeyにして、そもそものデータ全体を対象に、上から回して行って、
Excelのvlookup関数のような感じで、2列目、3列目の数字を取出し、目的の演算を行おうとしていた。
import pandas as pd
import numpy as np
nan = float("nan")
#データ読込
data = np.loadtxt('data.csv',delimiter=',',dtype='float',skiprows=0) #データ全体を読込
data_code = data[:,0] #データ全体から「商品コード」部分を取出す
df1 = pd.DataFrame(
{'CD': data[:,0],
'quantity':data[:,1],
'@': data[:,2]},
columns=['CD', 'quantity', '@'])
print(df1) # とりあえず、表みたいな形式になるか確認してみた
data_code = np.array(data_code.reshape(len(data_code),)) # 商品コードの重複を削除してみた
print(data_code)
# ここから重複のない純粋な商品コードをkeyにして、そもそものデータ全体を対象に、上から回して行って、
Excelのvlookup関数のような感じで、2列目、3列目の数字を取出し、目的の演算を行おうとしていた。
573529=535
2018/02/26(月) 23:48:06.01ID:CZMjr0z3 質問では、1行4列の行列が、nあるとしましたが、本当はCSV全体で1つの行列になると思いましたので、
numpyを使って、重複を発見したときに、i行2列、同3列の数値を取出し、目的の演算をしようと初め思っていました。
しかし、行列の内部での要素の取出しが今一つわかりませんでした。(初心者用の本しか持っておらず、ネット頼りでしたが
必要な情報を見つけられませんでした。
それで、表形式になるpandasのDataframeを用いてみましたが、重複除きの商品コードから、
当該の行データを取出し、同様に2列目、3列目の数値を用いて演算させるのがわかりませんでした。
かなり自分でも能力が足りないのに、欲張っていたかと思います。
反省いたします。
機械学習に興味関心がありますので、今後、pythonの勉強を頑張りたいです。
ご迷惑でなければ、また皆様にご教示いただきたいです。
numpyを使って、重複を発見したときに、i行2列、同3列の数値を取出し、目的の演算をしようと初め思っていました。
しかし、行列の内部での要素の取出しが今一つわかりませんでした。(初心者用の本しか持っておらず、ネット頼りでしたが
必要な情報を見つけられませんでした。
それで、表形式になるpandasのDataframeを用いてみましたが、重複除きの商品コードから、
当該の行データを取出し、同様に2列目、3列目の数値を用いて演算させるのがわかりませんでした。
かなり自分でも能力が足りないのに、欲張っていたかと思います。
反省いたします。
機械学習に興味関心がありますので、今後、pythonの勉強を頑張りたいです。
ご迷惑でなければ、また皆様にご教示いただきたいです。
574デフォルトの名無しさん
2018/02/27(火) 00:24:03.42ID:WS3TaZ0C 行列の大きさ次第では計算量がすごいことなるで
メモリとか時間を気にせんのと、初心者っぽくやるなら、numpyのuniqueをまず使ってループ回すかな
メモリとか時間を気にせんのと、初心者っぽくやるなら、numpyのuniqueをまず使ってループ回すかな
575デフォルトの名無しさん
2018/02/27(火) 00:37:56.53ID:tquTMsI7 >>571
最初からその説明(具体的な処理目的説明)していたら展開が違ったような気がする
俺なら
重複している商品コードを整理し
全データ(100以上のデータ)で重複している商品コードを洗い出す処理をして
{101:[20,150,150], [30,200,150]} <= valueが2個以上なら重複とわかる
とかを生成して、
これ(商品コード101)に対して数量の合算、金額(単価)の加重平均を行うような処理にするが
最初からその説明(具体的な処理目的説明)していたら展開が違ったような気がする
俺なら
重複している商品コードを整理し
全データ(100以上のデータ)で重複している商品コードを洗い出す処理をして
{101:[20,150,150], [30,200,150]} <= valueが2個以上なら重複とわかる
とかを生成して、
これ(商品コード101)に対して数量の合算、金額(単価)の加重平均を行うような処理にするが
576デフォルトの名無しさん
2018/02/27(火) 00:47:13.10ID:FXmriiXi577デフォルトの名無しさん
2018/02/27(火) 00:48:09.81ID:FXmriiXi できるだけ、forやifなどを使わない簡単な方法を探しております。。。
よろしくお願いします。
よろしくお願いします。
578デフォルトの名無しさん
2018/02/27(火) 01:03:09.36ID:P5BFQcr1 >>565
一休さん乙。
一休さん乙。
579デフォルトの名無しさん
2018/02/27(火) 01:09:04.37ID:Rrp6rDyp >576
numpyは使ったことないから、リファレンス見ながら適当に書いた。
a==b==cだとエラーになるので、a==bとb==cをlogical_andでつないだら動いた。
print(np.sum(np.logical_and(a == b, b == c)))
numpyは使ったことないから、リファレンス見ながら適当に書いた。
a==b==cだとエラーになるので、a==bとb==cをlogical_andでつないだら動いた。
print(np.sum(np.logical_and(a == b, b == c)))
580デフォルトの名無しさん
2018/02/27(火) 01:16:19.46ID:FXmriiXi581デフォルトの名無しさん
2018/02/27(火) 07:33:45.62ID:WS3TaZ0C582デフォルトの名無しさん
2018/02/27(火) 07:52:03.09ID:ckmPPEEZ (作るのは)
どこでこんな括弧の使い方教えとんねんwww
どこでこんな括弧の使い方教えとんねんwww
583デフォルトの名無しさん
2018/02/27(火) 08:47:20.59ID:4ixkfDNT 学校(幼少期の)だよ
584デフォルトの名無しさん
2018/02/27(火) 10:04:13.40ID:j7JSqS95 は?お前Pythonスレで何言ってんの?
作るのはって引数に決まってんじゃん
作るのはって引数に決まってんじゃん
585遊園地
2018/02/27(火) 10:59:17.74ID:gK8Y9TGp 思った以上に難しいな。
発狂モードで、人から聴きながら、公式ドウキュメントと睨めっこ
してるけど、未だに熟考してるな。
defaultdict
items()
https://ideone.com/rbwrKz
発狂モードで、人から聴きながら、公式ドウキュメントと睨めっこ
してるけど、未だに熟考してるな。
defaultdict
items()
https://ideone.com/rbwrKz
586デフォルトの名無しさん
2018/02/27(火) 11:05:15.46ID:FXmriiXi587遊園地
2018/02/27(火) 11:06:31.38ID:gK8Y9TGp 間違えた。 こっちで良かった。
https://ideone.com/M2W034
https://ideone.com/M2W034
588遊園地
2018/02/27(火) 11:09:43.96ID:gK8Y9TGp 結合前のindexが有るから適当に逆算して。
データが最後まで欲しいなら んぐぅうううーーー ::
defaultdict
lambda
enumerate
append
データが最後まで欲しいなら んぐぅうううーーー ::
defaultdict
lambda
enumerate
append
589デフォルトの名無しさん
2018/02/27(火) 11:26:30.40ID:9tU+EFzs a=set(a) ; b=set(b) ; c=set(c)
print(len(list(a&b&c)))
これじゃあかんのか?
print(len(list(a&b&c)))
これじゃあかんのか?
590デフォルトの名無しさん
2018/02/27(火) 12:09:23.76ID:Icbybavp >589
setは順番を保持しないからダメ
setは順番を保持しないからダメ
591遊園地
2018/02/27(火) 12:16:23.97ID:gK8Y9TGp おちんぽっぽ おちんぽっぽ
ぶひひいいいいいいいいいいいいいいいい
l=[[100,50,250,300],[101,20,150,150],
[101,30,200,150],[102,80,100,200]]
r=[]
for i in l:
□r.append(['ID_'+str(i[0]),i[1:3]])
from collections import defaultdict
d = defaultdict(lambda :[[], []])
for i, j in enumerate(r):
□d[j[0]][0] += [j[1]]
□d[j[0]][1] += [i]
for key in sorted(d):
□print(key,d[key])
ぶひひいいいいいいいいいいいいいいいい
l=[[100,50,250,300],[101,20,150,150],
[101,30,200,150],[102,80,100,200]]
r=[]
for i in l:
□r.append(['ID_'+str(i[0]),i[1:3]])
from collections import defaultdict
d = defaultdict(lambda :[[], []])
for i, j in enumerate(r):
□d[j[0]][0] += [j[1]]
□d[j[0]][1] += [i]
for key in sorted(d):
□print(key,d[key])
592遊園地
2018/02/27(火) 12:35:38.76ID:gK8Y9TGp エクセル仕様の縦配列ならpandasなんだけどなー。
l=[[100,50,250,300],[101,20,150,150],
[101,30,200,150],[102,80,100,200]]
1列目:商品コード
2列目:数量
3列目:仕入金額(単価)
4列目:販売金額(単価)
print(list(zip(*l)))
[(100, 101, 101, 102), 商品コード
(50, 20, 30, 80), 数量
(250, 150, 200, 100), 仕入金額(単価)
(300, 150, 150, 200) 販売金額(単価)]
import pandas as pd
df = pd.DataFrame(
{
'id':['ID_100','ID_101','ID_101','ID_102'],
'数量':[50,20,30,80],
'仕入金額_単価':[250,150,200,100],
'販売金額_単価':[300,150,150,200]
}
)
print(df)
l=[[100,50,250,300],[101,20,150,150],
[101,30,200,150],[102,80,100,200]]
1列目:商品コード
2列目:数量
3列目:仕入金額(単価)
4列目:販売金額(単価)
print(list(zip(*l)))
[(100, 101, 101, 102), 商品コード
(50, 20, 30, 80), 数量
(250, 150, 200, 100), 仕入金額(単価)
(300, 150, 150, 200) 販売金額(単価)]
import pandas as pd
df = pd.DataFrame(
{
'id':['ID_100','ID_101','ID_101','ID_102'],
'数量':[50,20,30,80],
'仕入金額_単価':[250,150,200,100],
'販売金額_単価':[300,150,150,200]
}
)
print(df)
593デフォルトの名無しさん
2018/02/27(火) 12:39:52.76ID:QQKDT/2n 文法理解したら次何やればいいの?
594遊園地
2018/02/27(火) 12:49:34.98ID:gK8Y9TGp キーワードに関する文法を覚えて、高校までの数学A,B,C &適当なフレームワークとモジュール
596デフォルトの名無しさん
2018/02/27(火) 12:57:32.12ID:Icbybavp 遊園地さんへ
defaultdictにlambdaを渡せば、長さ固定で0初期化したリストを初期値に出来るっていうのは、初めて知りました。
参考にして作ったコードが、こちらです。
https://ideone.com/Y8yQsm
defaultdictにlambdaを渡せば、長さ固定で0初期化したリストを初期値に出来るっていうのは、初めて知りました。
参考にして作ったコードが、こちらです。
https://ideone.com/Y8yQsm
597遊園地
2018/02/27(火) 14:09:26.24ID:gK8Y9TGp 中途半端な数学とあやふやな日本語表記だったから、もっとできない奴だと思ってた。
遊園地 より お前の方が 上だな。
通常運営に戻るかwww
おちんぽっぽ おちんぽっぽ
ぶひひいいいいいいいいいいいいいいいいwwwwww
( ゚д゚)ハッ! ┌(_Д_┌ )┐
( ゚д゚)ハッ! ┌(_Д_┌ )┐
ヘ(゚∀゚ヘ)アヒャ φ(..)メモメモ
遊園地 より お前の方が 上だな。
通常運営に戻るかwww
おちんぽっぽ おちんぽっぽ
ぶひひいいいいいいいいいいいいいいいいwwwwww
( ゚д゚)ハッ! ┌(_Д_┌ )┐
( ゚д゚)ハッ! ┌(_Д_┌ )┐
ヘ(゚∀゚ヘ)アヒャ φ(..)メモメモ
598デフォルトの名無しさん
2018/02/27(火) 18:51:07.34ID:QPaDq+KZ ここですか
600デフォルトの名無しさん
2018/02/27(火) 20:02:12.99ID:668fk3cP >>562は煽りのおかげで自己解決しました
サンクス
サンクス
601デフォルトの名無しさん
2018/02/27(火) 22:39:14.30ID:ckmPPEEZ602遊園地
2018/02/28(水) 09:37:18.44ID:81tKqnQ0 (ずっと初心者のままって事だから)「居たら駄目だろw」
603デフォルトの名無しさん
2018/02/28(水) 10:57:25.07ID:8lfCgpCk Pyton始めて触ったけどなんか楽しい
C#は凄くつまらないけどこれはなんか楽しい
C#は凄くつまらないけどこれはなんか楽しい
604デフォルトの名無しさん
2018/02/28(水) 12:36:21.50ID:A/91+nvq 残念ながらPython使いにはC#好きが多いらしいぞ
つまり君はPythonに向いてない可能性がある
つまり君はPythonに向いてない可能性がある
605デフォルトの名無しさん
2018/02/28(水) 13:28:16.40ID:FB6O8UTn コンパイルや型宣言が迂遠に思うとかなら型宣言のなさが口惜しくなる時も…
(制約は実行時チェックだから遅くなるし、numbaとかはimportコスト高いし
でも日曜プログラミングには最適。C#はお堅すぎてC++の方が好きだが、開発効率でC#
(制約は実行時チェックだから遅くなるし、numbaとかはimportコスト高いし
でも日曜プログラミングには最適。C#はお堅すぎてC++の方が好きだが、開発効率でC#
606デフォルトの名無しさん
2018/02/28(水) 14:07:22.37ID:q5eChUM3 pycharmでプログラム書いて、
後から弄ってたりすると、
失敗することが多いのですが、
失敗する前には、戻せないですよね、
書いたプログラムを、万一に備えてバックアップとかしてますか?
バックアップする場合はどうやるといいでしょうか?
後から弄ってたりすると、
失敗することが多いのですが、
失敗する前には、戻せないですよね、
書いたプログラムを、万一に備えてバックアップとかしてますか?
バックアップする場合はどうやるといいでしょうか?
607遊園地
2018/02/28(水) 14:11:34.30ID:81tKqnQ0 任意の開発環境のテキストエディター
右クリックで[元に戻す]
もしくは、メニューから戻れよな。
右クリックで[元に戻す]
もしくは、メニューから戻れよな。
608デフォルトの名無しさん
2018/02/28(水) 14:20:29.71ID:q5eChUM3 >>607
ありがとお、
英語だから読めなかったけど、
ツールバーのEditのところに、
Undoっていのあって、押してみたら元に戻った、
PC壊れた時のための、
バックアップとかはしなくても、大丈夫かな?
ありがとお、
英語だから読めなかったけど、
ツールバーのEditのところに、
Undoっていのあって、押してみたら元に戻った、
PC壊れた時のための、
バックアップとかはしなくても、大丈夫かな?
609デフォルトの名無しさん
2018/02/28(水) 15:17:54.83ID:sMQ4/p2k pycharm って日本語化プラグイんがあったはずだからそれ入れてみたら?
もちろん自己責任で
って言うか、初心者ならIDLE でいいと思うけどなぁ
もちろん自己責任で
って言うか、初心者ならIDLE でいいと思うけどなぁ
610デフォルトの名無しさん
2018/02/28(水) 15:31:59.71ID:72oZA9I7 昨日pythonをはじめたばかりの俺が言うのも何だけど
IDLEはリドゥの機能が最低限文化的な水準じゃないすぎると思うの
IDLEはリドゥの機能が最低限文化的な水準じゃないすぎると思うの
611デフォルトの名無しさん
2018/02/28(水) 17:46:56.48ID:F8/eMdWm >>608
うどん
うどん
612デフォルトの名無しさん
2018/02/28(水) 18:21:06.44ID:acVWAXbg >>608
いやgit使えよ
いやgit使えよ
613デフォルトの名無しさん
2018/02/28(水) 19:39:47.11ID:6WnrRHIY614デフォルトの名無しさん
2018/02/28(水) 20:24:36.85ID:zBchD6Xs git reset --hard HEAD^
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国、日本渡航に再警告 「侮辱や暴行で複数の負傷報告」 [ぐれ★]
- 経済誌元編集長「石破氏がコメ増産したからコメが余りまくってるどうしてくれるんだ」高市総理は悪夢の石破政権の尻ぬぐいしてる [バイト歴50年★]
- 【台湾有事】トランプ氏 電話会談で高市総理に発言抑制を要求か 米メディア報道… ★11 [BFU★]
- 高市総理の「そんなことよりも」発言を釈明 木原官房長官「急いで話題転換する趣旨」 [ぐれ★]
- 【足立暴走男の母親が涙の謝罪】「医師から運転を止められていた」母が語った事件の背景 男は数年前から統合失調症 最近薬を変え… [ぐれ★]
- 【芸能】“酒豪” 古田新太、超独特な食生活を明かす「朝、昼は食わない」 撮影中は「コーヒーとタバコだけ」 [冬月記者★]
- 高市早苗「“裏金問題”の調査をすると約束しましたが結果を公表するとはいってません。説明責任は果たした😲 [861717324]
- おさかなさんあつまれえ
- 【悲報】米メディア「高市早苗は外交の泥沼に自ら足を踏み入れた間抜け」 [714769305]
- お前ら知ってる?ユカタン半島って
- まったり進行おじゃる丸ハウス🏡
- VIPでウマ娘
