1 名前:デフォルトの名無しさん [2020/01/02(木) 15:56:54.08 ID:ZUrZA+uS.net] 当スレに★Python以外のプログラミング言語での回答類を書くべからず★ ☆「Ruby では」「Rubyでは」をNGワード登録推奨 このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。 ★Pythonのソースコードはそのまま5ちゃんにコピペするとインデントが崩れるので ↓等のてきとうなソースコード用うpろだに貼ってきてください。 スクショをImgur等にうp といった 手抜き(クソ行為)禁止。 ttp://ideone.com/ デフォ設定はC用のため言語選択ボタン押下がピコ手間かも。 ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。 ttp://pastebin.com/ まずまずシンプル。 ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。 ttps://jupyter.org/try (旧try.jupyter.org)ちょっとめんどうそう ◆エラーを解決したい場合は、表示されてるエラー全文(勝手に省略禁止)と 実行環境(Pythonのバージョン・OS名・IDEの種類とバージョン)をシッカリ書くこと。 ◇Python公式サイト◇ www.python.org/ ◇まとめwiki◇ ttp://python.rdy.jp/ 〇前スレ〇 くだすれPython(超初心者用) その45【Ruby禁止】 https://mevius.5ch.net/test/read.cgi/tech/1571188632/
2 名前:デフォルトの名無しさん [2020/01/02(木) 15:59:02.97 ID:ZUrZA+uS.net] >>> 0 ** 0 1 >>> 0 / 0 ZeroDivisionError: division by zero
3 名前:デフォルトの名無しさん [2020/01/02(木) 16:02:30.65 ID:ZUrZA+uS.net] 関連スレ Pythonのお勉強 Part62 https://mevius.5ch.net/test/read.cgi/tech/1568531160/
4 名前:デフォルトの名無しさん [2020/01/02(木) 16:22:20.85 ID:T0zeprk/.net] >>2 https://ja.wikipedia.org/wiki/0%E3%81%AE0%E4%B9%97
5 名前:デフォルトの名無しさん [2020/01/02(木) 16:36:42.09 ID:yYKIO5sw.net] 北海道のグラサンスーパーハゲザーはここにはこないのー?
6 名前:デフォルトの名無しさん [2020/01/02(木) 16:38:32.31 ID:NYIo0K4b.net] 久しぶりに貼っとくか 日本語の扱いで戸惑ったらこちらをどうぞ ttp://speirs.blog17.えふしー2.com/blog-えんとり-4.html ttp://atomic.jpn.ph/prog/etc/encode.html ttp://d.はてna.ne.jp/kakurasan/20100330/p1 PythonのUnicodeEncodeErrorを知る ttp://lab.hde.co.jp/2008/08/pythonunicodeencodeerror.html
7 名前:デフォルトの名無しさん mailto:sage [2020/01/03(金) 17:34:21.06 ID:o2JYS5/T.net] スマートに長さが決まってる配列に交互に数値をいれていくにはどうしたら良いですか? 自分でつくるとどうも長くなってしまいます t=5 v=[] for i in enumerate(): if i==t: break elif i%2==0: v.append(1) elif i%2==1: v.append(4) けっか [1,4,1,4,1]
8 名前:デフォルトの名無しさん [2020/01/03(金) 17:46:09.32 ID:9yXh1BHh.net] np.array([1,4]*3).flatten()[:5]
9 名前:デフォルトの名無しさん [2020/01/03(金) 17:47:21.41 ID:9yXh1BHh.net] ([1,4]*3)[:5] でいけた
10 名前:デフォルトの名無しさん mailto:sage [2020/01/03(金) 18:52:28.14 ID:b0yxo6PI.net] >>9 ありごとうございます
11 名前:7 mailto:sage [2020/01/03(金) 20:12:56.57 ID:o2JYS5/T.net] >>9 一行だけとは超スマートです!! ありがとうございます!!
12 名前:デフォルトの名無しさん [2020/01/03(金) 20:34:33.45 ID:JUB4cBO3.net] >>7 ある言語では v =: 5 $ 1 4
13 名前:デフォルトの名無しさん [2020/01/03(金) 20:38:57.19 ID:EoKPJcjT.net] 草
14 名前:デフォルトの名無しさん [2020/01/03(金) 20:42:39.36 ID:1QSwQP8U.net] ツッコミ待ちか
15 名前:デフォルトの名無しさん mailto:sage [2020/01/03(金) 21:47:45.01 ID:cSDCrnP1.net] >>7 from itertools import islice, cycle def take(n, iterable): ____return list(islice(iterable, 0, n)) take(5, cycle([1,4]))
16 名前:デフォルトの名無しさん mailto:sage [2020/01/03(金) 22:08:54.32 ID:3PIY9GXm.net] pyinstallerがインストールできません。
17 名前:デフォルトの名無しさん mailto:sage [2020/01/03(金) 22:10:03.64 ID:3PIY9GXm.net] コマンドプロンプトを起動 pipでPyInstallerをインストール $ pip install pyinstaller って書いてあるけど、windowsのコマンドプロンプトっていうことでしょうか? やってみたけどエラーが出てインストールできません。
18 名前:デフォルトの名無しさん [2020/01/03(金) 22:19:34.01 ID:3C9uWk1w.net] >>17 エラーの内容をそのままでいいので貼り付けてください
19 名前:デフォルトの名無しさん [2020/01/03(金) 22:27:22.75 ID:3C9uWk1w.net] win10, Python3.7では pip install pyinstallerでエラーはでなかったです
20 名前:デフォルトの名無しさん mailto:sage [2020/01/03(金) 22:42:46.43 ID:3PIY9GXm.net] すいません。 C:\WINDOWS\system32>pip install pyinstaller 'pip' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 というメッセージが出ています。
21 名前:デフォルトの名無しさん [2020/01/03(金) 23:04:32.83 ID:3C9uWk1w.net] >>20 %PATH%にpip.exeの場所を追加できればとりあえずは解決できると思います
22 名前:デフォルトの名無しさん mailto:sage [2020/01/03(金) 23:27:59.92 ID:3PIY9GXm.net] >>21 ファイルのある場所にパスを通すということでしょうか? 調べてみたのですが、やり方がよく分からずすいません。
23 名前:デフォルトの名無しさん mailto:sage [2020/01/03(金) 23:29:36.06 ID:CE0ocwaC.net] 「Windows10 環境変数」でググれ
24 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 00:00:59.89 ID:8qieO/zq.net] >>22 もう一度インストーラーを起動して、 関連付けのチェックを入れればいい
25 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 01:33:24.48 ID:H/phePoP.net] キーボードの左下にあるWindowsキー(窓が刻印されたキー)と右上にあるPauseキーを同時に押す 左側の「システム詳細設定」をクリック 下のほうにある「環境変数(N)...」をクリック 「〜のユーザー環境変数」にある「PATH」をダブルクリック 「環境変数名の編集」画面がでるので右上の「新規(N)」をクリック コマンドプロンプトでwhereコマンドでpipコマンドがある場所を調べて追加(例:C:\Users\xxx\xxx\>where pip) refreshenvコマンドを実行(例:C:\Users\xxx\xxx\>refreshenv) >pip --version Windows 10でPath環境変数を設定/編集する https://www.atmarkit.co.jp/ait/articles/1805/11/news035.html Cコンパイラのパスを環境変数に登録する https://www.youtube.com/watch?v=MQLQHGT-imM Python 環境変数設定 https://www.youtube.com/watch?v=Mw-eymuD6o0
26 名前:その他 mailto:sage [2020/01/04(土) 01:43:48.94 ID:H/phePoP.net] PC をバックアップおよび復元する https://support.microsoft.com/ja-jp/help/17127/windows-back-up-restore コマンドでWindowsアプリを楽々管理「Chocolatey」 https://www.atmarkit.co.jp/ait/articles/1806/22/news026.html Qiita > chocolatey https://qiita.com/tags/chocolatey
27 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 02:20:50.51 ID:H/phePoP.net] プログラム技術(tech)板の過去ログ検索 https://www.google.it/search?hl=jp&q=site:2ch.net/test/read.cgi/tech/+検索語句 https://www.google.it/search?hl=jp&q=site:5ch.net/test/read.cgi/tech/+検索語句 https://duckduckgo.com/bang https://duckduckgo.com/bang_lite.html https://duckduckgo.com/bang?c=Tech&sc=Languages+(Python) !so python !hatebu python !hn python !infoq python !qiita python !quora python !amjp python !tw python !hashtag python !5ch python !r python !slideshare python !stackshare python !rstc python rosettacode.org/wiki/Category:Programming_Languages
28 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 02:24:14.73 ID:H/phePoP.net] https://duckduckgo.com/bang?q=google !yt python !papers python !gn python !gnuk python !gnnl Guido van Rossum
29 名前:デフォルトの名無しさん [2020/01/04(土) 05:58:50.34 ID:UVp63hNq.net] >>7 [4 ** (x % 2) for x in range(5)]
30 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 09:09:49.45 ID:FBAmMQ8N.net] zip関数って無かったっけ?
31 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 09:24:51.99 ID:B5eyFP88.net] >>7 [[1, 4][x % 2] for x in range(5)]
32 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 10:35:07.19 ID:d9ICAhD8.net] >>29 が今のとこ一番分かりやすい
33 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 10:54:36.43 ID:GvN9lrG0.net] windows のコマンドプロンプトで python を動かすのは あまりお勧めできないけどな 苦労が多すぎて、得るものが少ない
34 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 11:41:40.61 ID:hpecUN4N.net] そのココロは? - windowsでpythonやるならコマンドプロンプトよりも×× - windowsでやるならpythonよりも×× - pythonやるならwindowsよりもlinux
35 名前:デフォルトの名無しさん [2020/01/04(土) 13:00:02.96 ID:trUJS7QS.net] >>30 ちょっとひねらないと嬉しい結果にならんな >>> list(zip([1,1,1],[4,4,4])) [(1, 4), (1, 4), (1, 4)]
36 名前:デフォルトの名無しさん [2020/01/04(土) 13:10:53.70 ID:trUJS7QS.net] >>33-34 横からだが WSL使ってる人 → そのままWSLで WSL使ってない人 → git for windows 入れてそれと一緒に入る git bash お薦め
37 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 13:20:22.82 ID:xFWRGYjR.net] >>35 >>> from functools import reduce >>> from operator import add >>> reduce(add, zip([1,1,1],[4,4,4]))[:5] (1, 4, 1, 4, 1)
38 名前:デフォルトの名無しさん [2020/01/04(土) 13:31:07.19 ID:trUJS7QS.net] >>33 >>36 tdm-gcc (x64) 入れると MinGW Command Prompt っていうのが付いてくるのでそっち使ってる
39 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 13:57:37.93 ID:hpecUN4N.net] 自分の場合、ふだんnodeとかはgit bashで使ってるけどpythonだけはコマンドプロンプト使ってた。 venv使ってるのとエクスプローラからパスをdrag&dropする使い方が多いんで。 コマンドプロンプト自体がお勧めできないというのは置いておいて、特にpython使うのに 向いていないとは感じないがな。
40 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 18:21:36.62 ID:k4tVVk2l.net] どうしてcmdがおすすめできない訳?
41 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 20:01:48.09 ID:Q3FXXgpV.net] 10年位前のpython2.7の頃に比べれば windows10 python3.8はものすごく使い やすくなっている
42 名前:デフォルトの名無しさん mailto:sage [2020/01/04(土) 20:03:30.69 ID:Q3FXXgpV.net] wsl出てからpythonはwslだったけど、個人的にちょっと開発するなら windows10で十分
43 名前:デフォルトの名無しさん [2020/01/05(日) 00:25:24.67 ID:cNQ0xZ86.net] forの中のif 文がよく似てる感じなのですが まとめれないでしょうか? 階層が深くて分かりにくくなってしまいました *マークは字下げです plane_angle = [] for i , h in enumerate(ho): ****if i >= len(ho) - 1: ********if ho[0].dot(ho[i])<-1: ************ang=0 ********else: ************ang=acos(ho[0].dot(ho[i])) ************if ho[i].cross(ho[0]).z<0: ****************ang=pi+ang ************else: ****************ang=pi-ang ****else: ********if ho[i+1].dot(ho[i])<-1: ************ang = 0 ********else: ************ang = acos(ho[i+1].dot(ho[i])) ************if ho[i].cross(ho[i+1]).z<0: ****************ang = pi + ang ************else: ****************ang = pi-ang ****plane_angle.append(ang)
44 名前:デフォルトの名無しさん mailto:sage [2020/01/05(日) 00:52:34.25 ID:NzdiaSgk.net] >>43 hoが何でどういう風にデータが入ってるのか教えてくれ
45 名前:デフォルトの名無しさん [2020/01/05(日) 01:10:24.54 ID:cNQ0xZ86.net] >>44 hoはx,y,z座標を normalize()させた値が複数個入ってます こんな感じです 入ってる数と座標はその時によって違います [Vector((0.9713584184646606, -0.23761920630931854, 0.0)), Vector((0.2879558205604553, 0.9576436281204224, 0.0)), Vector((-0.8237842321395874, 0.0, 0.5669034123420715)), Vector((-0.9037604331970215, -0.36954042315483093, -0.21600256860256195))]
46 名前:デフォルトの名無しさん mailto:sage [2020/01/05(日) 01:19:33.03 ID:MK0cWPLh.net] 超初心者です。Pythonのscrapyについて教えていただきたいです。 一つのspiderを作って、crawlすることはできたのですが、 (scrapy crawl xxxxx -o sample_data.csv) yyyyy.pyとzzzzz.pyというspiderを同じディレクトリに作成し、 (x,y,zは別ドメイン別サイトで同じような情報が掲載されている。 もちろん構造が違うためxpathはサイトごとに違う。) 連続で実行する方法があったら知りたいです。 ググったのですが、scrapyでそういうことができるかどうか、 わからなかったので、質問させていただきました。 spiderの.pyのみx,y,zと複数作って管理保守を楽にしたいです。 xxxxx.pyに複数のclassを書いて、上から順に実行していくという方法に なるのでしょうか。 わかりづらくて申し訳ないです。ご教示よろしくお願いいたします。
47 名前:デフォルトの名無しさん mailto:sage [2020/01/05(日) 01:32:31.46 ID:BPHXVrhY.net] Ruby なら、`〜` でコマンドを実行できる `コマンド 1` `コマンド 2` `コマンド 3` scrapy はコマンド名か? それなら、下のようにできる `scrapy 〜` `scrapy 〜` `scrapy 〜` コマンドを呼ぶぐらいなら、Ruby以外にも、シェルスクリプト・PowerShell でも出来る
48 名前:27 mailto:sage [2020/01/05(日) 02:09:21.37 ID:k//yuqW0.net] !hackster python https://www.twitter.com/hacksterio https://www.youtube.com/hacksterio https://www.hackster.io/channels/topics Python on Hardware Power your homes and bots with Python! https://www.hackster.io/python-on-hardware/projects (deleted an unsolicited ad)
49 名前:デフォルトの名無しさん mailto:sage [2020/01/05(日) 03:43:21.88 ID:y+bEWN5I.net] >>43 要は2つの隣接する単位ベクトルho[i]とho[i+1]の演算を行いたいが、iが末尾の時はi+1の代わりに0番目を使いたいということか? それならまずi+1または0を変数jに入れて、ho[i]とho[j]の処理だけを書けば良さそう。
50 名前:デフォルトの名無しさん mailto:sage [2020/01/05(日) 04:26:51.43 ID:NzdiaSgk.net] >>43 def foo(v1, v2): ____if v1.cross(v2).z < 0: ________return pi + acos(v2.dot(v1)) ____else: ________return pi - acos(v2.dot(v1)) plane_angle = [0 if v2.dot(v1) < -1 else foo(v1, v2) for v1, v2 in zip(ho, ho[1:] + ho[:1])]
51 名前:43 mailto:sage [2020/01/05(日) 12:09:19.59 ID:cNQ0xZ86.net] >>50 びっくりするほど短くなるんですね ありがとうございます 助かりました
52 名前:デフォルトの名無しさん mailto:sage [2020/01/05(日) 12:25:51.05 ID:Q3EjVbhD.net] >>51 そもそも命名規則とか意識した方がいい 自分でコード読めなくなるぞ
53 名前:デフォルトの名無しさん mailto:sage [2020/01/05(日) 13:21:59.71 ID:t/h3kgdg.net] df = pd.read_csv(file) print(df.query('class > 1')) 例外が発生しました: SyntaxError Python keyword not valid identifier in numexpr query (<unknown>, line 1) File "L:\c#\プロジェクト再開\UnsRehaPlanR21\UnsReha\bin\Debug\setData.py", line 27, in <module> print(df.query('class > 1')) これなにが間違ってるのでしょう?
54 名前:デフォルトの名無しさん [2020/01/05(日) 13:22:23.53 ID:qO+R3XJX.net] 長さが違うものでもzipできるの?
55 名前:デフォルトの名無しさん mailto:sage [2020/01/05(日) 14:57:09.36 ID:NzdiaSgk.net] >>53 >Python keyword not valid identifier in numexpr query Pythonのキーワードはnumexprクエリにおいて有効な識別子ではありません “class”はPythonのキーワード
56 名前:43 mailto:sage [2020/01/05(日) 15:49:37.35 ID:cNQ0xZ86.net] >>52 はい、命名規則つけるようにします。 ほとんど後でメンテナンス不可能になって投げ捨てる事になってしまうので ちゃんとやることにします
57 名前:デフォルトの名無しさん mailto:sage [2020/01/05(日) 22:53:56.79 ID:t/h3kgdg.net] >>55 あああ〜、、、 ありがとうございます。 結構悩んだんだけど、予約語でしたか、、、
58 名前:デフォルトの名無しさん mailto:sage [2020/01/05(日) 23:08:33.53 ID:CBy/ZWII.net] seleniumのwebdriverwaitが100%タイムアウト返してくるんですけど、これ考えられる原因あります? waitの時間伸ばすしか対策ないんでしょうか?
59 名前:デフォルトの名無しさん mailto:sage [2020/01/05(日) 23:58:22.41 ID:NzdiaSgk.net] >>58 ImplicitWaitしてて 検索条件が間違ってる可能性がある デバッガでブレイクポイント設定してステップ実行で試せば 本当にタイムアウトしてるのか条件が間違ってるのか切り分けられる
60 名前:デフォルトの名無しさん mailto:sage [2020/01/06(月) 00:08:19.56 ID:VrovJO3c.net] >>59 具体的には https://colab.research.google.com/drive/1wT6ZpKLNr24R5qEfH-0jotifhBVrfA9S の57行目でタイムアウト返ってくるんですよね… この場合だとec.element_to_be_clickableの中身が間違ってるんでしょうか…
61 名前:デフォルトの名無しさん mailto:sage [2020/01/06(月) 00:28:29.42 ID:zQo0hVCB.net] データフレームに含まれるNoneデータの個数を数えようとしています df_bool = (df_combine == None) @ number_of_outliers = df_bool.sum() A でいけるかと思ったんですが、dfにNoneデータに対して@はFalseの判定でした。 どうやって数えればいいんでしょうか?
62 名前:デフォルトの名無しさん mailto:sage [2020/01/06(月) 01:16:53 ID:78RinjQr.net] >>60 エラーが返される57行目の前に Python3.7以降ならbreakpoint()と書けばブレイクポイントが設定されて 標準のデバッガが起動されるのでnとかsでステップ実行したり任意のコードを実行したりできる IPythonのデバッガを使いたければimport ipdbして ブレイクポイント設定したいところでipdb.set_trace(context=10) 人の書いたコードを丸っとコピペするのは別にいいけど 間違ってるかどうかを自分で確かめられないようなら潔く使うのは諦めたほうがいい
63 名前:デフォルトの名無しさん mailto:sage [2020/01/06(月) 01:17:07 ID:78RinjQr.net] >>61 df.isna().sum()
64 名前:デフォルトの名無しさん mailto:sage [2020/01/06(月) 10:06:33.60 ID:bAE45PWZ.net] >>63 ありがとう。助かりました。
65 名前:デフォルトの名無しさん mailto:sage [2020/01/06(月) 23:59:51.35 ID:VrovJO3c.net] すいません…結局わかりませんでした… とりあえずelement_to_be_clickableの中身でエラー起こしてるみたいですが… 構文は間違ってないですし、IDの名前も間違ってないんですよね…
66 名前:デフォルトの名無しさん [2020/01/07(火) 00:20:44.83 ID:ueOqy5pf.net] >>60 # ランタイムクリック select_dropdown = WebDriverWait(self.driver, 20).until(EC.element_to_be_clickable((By.ID,"runtime-menu-button"))) runtime-menu-button のid が存在するかどうか、ブラウザのF12 開発者ツールで確認すれば? 存在しなければ、wait time を、20 秒から、200秒ぐらいにすれば?
67 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 00:29:10.58 ID:PWzkvPR1.net] >>66 runtime-menu-buttonが存在するところは確認済です 一応昨日180秒でやりましたが結果は変わりませんでした
68 名前:66 mailto:sage [2020/01/07(火) 02:08:13.14 ID:ueOqy5pf.net] 600 〜 1,800秒で、やってみれば? 自分が待てる限界時間まで、やってみれば?
69 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 02:39:18.92 ID:sZs6mHzs.net] 俺も以前開発ツールで見えているのにクリック出来なくてドハマりした 一度そのエレメントが見えるところまでまでスクロールすればイケルと思う 理由は分からないw 面倒だから全スクロール execute_script("window.scrollTo(0, document.body.scrollHeight);")
70 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 03:04:54 ID:sMehhi+2.net] headlessじゃなくブラウザを画面表示してデバッガでステップ実行すれば 本当にタイムアウト時間内に要素が求める状態になってないのか それとも求める状態になってるにもかかわらず取得できないのか一発で分かるやろ 後者ならステップ実行時にto_be_clickableじゃなく 単にfindで要素取得できるかどうかとか 取得できるならそれをclick()できるかどうかとか 正攻法で切り分けしていけばいい
71 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 07:30:53.46 ID:Thq5It+S.net] 他の要素の下になってクリックできないってこともある。
72 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 07:48:08.12 ID:gM3QDlRr.net] 見えてすら無いに一票
73 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 11:17:44 ID:DsG2B72o.net] pandasのread_excelでシート読むときに、セル内の関数を読み書きするのはどうしたらいいんでしょうか 具体的には=いまセルにtext(today()+1,"mmdd")が入ってて、read_excelすると1008が取得中できるのですが today()+nと操作したいです
74 名前:デフォルトの名無しさん [2020/01/07(火) 12:42:25.03 ID:j68rdTp2.net] もちろんできないのであきらめる
75 名前:デフォルトの名無しさん [2020/01/07(火) 12:54:01.36 ID:j68rdTp2.net] OpenPyXLなら式操作できるかな xlrdでもいいのかも知れないが "Please use openpyxl where you can..." なんてわざわざ書いてあるライブラリ使わんでもえやろ
76 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 14:39:25.87 ID:sMehhi+2.net] >>73 1. xlwingsやCOM使ってExcelを開いて再計算させてからpandas使う 2. Excelの計算式は捨ててpython側で計算式を定義する 3. openpyxlで計算式をパースしてpythonで計算し直す (茨の道)
77 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 15:07:43.76 ID:YTm5sjhC.net] seabornでlmplot使っているのですが、DFのラベルでlatency(msec)や[msec]として単位をグラフの軸ラベルを記載しようとするとエラーになります。
78 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 15:09:01.88 ID:YTm5sjhC.net] 多分[]や()が予約後だからかとおもいますが、DFのラベル名に単位を記載しようとするときはどのようにするべきなのでしょうか?
79 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 16:20:37.06 ID:sMehhi+2.net] >>77 角括弧や括弧があってもクウォートして文字列として扱われてれば問題無いはずなので エラー内容とそのエラーが再現する最小限のコードを公開したほうがいい
80 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 19:12:15.21 ID:cN6CR2jQ.net] latency_msec 1700 0 0 0 0 0 0 0 0 for i, latency in enumerate(df['latency_msec']): print(i, latency)
81 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 19:13:26.51 ID:cN6CR2jQ.net] 結果 0 1700 1 0 2 0 3 0 4 0 0 0 1 0 2 0 3 0 なんでインデックスが4まで行くと0になってしまうのでしょう? アホみたいですが、教えて下さい。
82 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 19:22:14.99 ID:cN6CR2jQ.net] >>81 すいません。 自己解決しました。 関数の呼び出し先の問題でした。 疲れ切ってます。 org
83 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 19:50:51.58 ID:cN6CR2jQ.net] 連投すいません x latency_msec 1 1700 2 1701 3 1702 4 1703 5 1704 6 1705 7 1706 8 1707 9 1708 df = input_data() print(df.iloc[1][1]) とすると ValueError: Can only index by location with a [integer, integer slice (START point is INCLUDED, END point is EXCLUDED), listlike of integers, boolean array] となります。 なぜでしょう・・・。 Pandasよくわからない・・・。
84 名前:デフォルトの名無しさん [2020/01/07(火) 19:55:20.61 ID:Bxvs3Isv.net] df.iloc[1,1]
85 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 20:03:44.84 ID:cN6CR2jQ.net] >>83 すいません。 無視してください、また変なこと聞きました。 もう無理だ・・・寝ます・・・。
86 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 22:05:07 ID:cN6CR2jQ.net] q75, q25 = np.percentile(col, [75 ,25]) colが整数だけのときは正しい値が入るのですが、colに少数が入ると0.0になってしまいます np.percentileって少数には使えないのでしょうか?
87 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 22:19:19 ID:sMehhi+2.net] >>86 a = np.array([[10.4, 7.8, 4.5], [3, 2, 1]]) np.percentile(a, [72,25]) #=> array([6.48, 2.25]) 問題なさそうだけど?
88 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 23:10:02 ID:cN6CR2jQ.net] >>87 あれ、本当ですね ここが原因と思ってたら何が原因か分からなくなってきた
89 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 23:17:56 ID:cN6CR2jQ.net] 四分位範囲で外れ値の値だったばあいフラグを立てる関数を作ったのですが、 なぜかデータが整数では正常動作するのに、少数が含まれているとフラグで1を立てても0になります。 かれこれ数時間悪戦苦闘しているのですが、原因わからず・・・。 どこかにコードを書き込んで質問できればいいのですが、そのような掲示板ありませんでしょうか? 本当に初心者ですいません。
90 名前:デフォルトの名無しさん [2020/01/07(火) 23:30:09.50 ID:Es2WAZts.net] つideone
91 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 23:55:26.90 ID:cN6CR2jQ.net] >>90 ありがとうございます。
92 名前:デフォルトの名無しさん mailto:sage [2020/01/07(火) 23:57:52.11 ID:cN6CR2jQ.net] https://ideone.com/Fl1R9z 40行目の df.iloc[i][output_column] = 1 が怪しいとおもうのですが、取り込んだdfが整数だけのときは1が書き込めているのですが、 dfに小数が含まれているときは書き込めていないようです。 なぜなのでしょう・・・・・。
93 名前:デフォルトの名無しさん mailto:sage [2020/01/08(水) 12:53:13.99 ID:U2S7mQMy.net] >>92 ↓この警告出てるよね? リンク先みて警告を消そう SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame See the caveats in the documentation: pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy とりあえず df.loc[i, output_column] = 1 にすれば動くけど 普通はenumerateとかせずにapply使う場面だと思う df[output_column] = df[chk_column].apply(is_outlier)
94 名前:デフォルトの名無しさん [2020/01/08(水) 17:08:03.84 ID:Sre2vN3k.net] df['price_edited'] = df['price'].apply(lambda a: int(a[1:]) if a.startswith('$') else 0)
95 名前:デフォルトの名無しさん mailto:sage [2020/01/08(水) 18:24:29.64 ID:xdUcjCBz.net] >>67 クリックできるようになるまで待つのをやめて、ボタンが現れるのに十分と思われる時間待った後で普通にクリックしてみる。 そうするとなんでクリックできないのか分かるかもしれない。
96 名前:デフォルトの名無しさん mailto:sage [2020/01/08(水) 19:32:52.69 ID:j91Gwtaz.net] map, filter, reduceとか色々あるけど、pythonでこの辺って使う機会ある?
97 名前:デフォルトの名無しさん mailto:sage [2020/01/08(水) 19:59:10.33 ID:NG22H+Rz.net] ほとんどない リスト内包表記の方が可読性高いし、複雑な処理にはどうせpandasとか使うし
98 名前:デフォルトの名無しさん mailto:sage [2020/01/08(水) 20:02:38.71 ID:cyxQSndQ.net] pythonに限らずどの言語でも用意されてるがどの言語でも使わない
99 名前:デフォルトの名無しさん mailto:sage [2020/01/08(水) 20:06:21.39 ID:HaPwADKT.net] mapは、リスト中の数字と数値を数字に統一して、ソートできるように再マッピングするときに使うことはある
100 名前:デフォルトの名無しさん [2020/01/08(水) 20:07:25.06 ID:cBWLj0dO.net] >>98 じゃあどうするの? for文?
101 名前:デフォルトの名無しさん mailto:sage [2020/01/08(水) 20:10:23.35 ID:v4o4ZY0H.net] >>96 mapは内包表記を使うほどでもないとき 競技プログラミングとかで入力を全部int型のリストに置き換えるときとかに使うぞ a,b,c = map(int,input().split())って感じで