[過去ログ]
Pythonのお勉強 Part73 (1002レス)
Pythonのお勉強 Part73 http://mevius.5ch.net/test/read.cgi/tech/1717631290/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
1: デフォルトの名無しさん (ワッチョイ f610-G7il) [] 2024/06/06(木) 08:48:10.07 ID:DsazphEm0 !extend:default:vvvvv:1000:1024 !extend:default:vvvvv:1000:1024 ↑スレ立てる毎に減るので、減ってたら3つに補充すること。 ・当スレにRubyのソースコード類を書くことを禁ず ・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止 ・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨 ・エラーを解決したいときは、かならず エラー文(勝手に省略orスクショうp等の横着禁止)と おま環(Pyt
honのバージョン番号+OS名とバージョン+IDE名)を書け。 ※前スレ Pythonのお勉強 Part72 https://mevius.5ch.net/test/read.cgi/tech/1703659345/ VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured http://mevius.5ch.net/test/read.cgi/tech/1717631290/1
903: デフォルトの名無しさん (ワッチョイ c5e6-bQm6) [sage] 2024/09/08(日) 19:31:24.09 ID:SLqL4HNM0 >>881,882,883 ありがとうございます! 時間あるときにチャレンジしてみます! http://mevius.5ch.net/test/read.cgi/tech/1717631290/903
904: デフォルトの名無しさん (ワッチョイ 911d-sF61) [] 2024/09/08(日) 19:38:08.04 ID:ZvPXoPz+0 >>900 サプーさんの2時間の動画見ても、結構「???」なとこ多くて、書籍はまだ理解できるレベルじゃないものだったので、Paizaってサイトに挑戦してみます 詳しくレスしてくれてありがとう http://mevius.5ch.net/test/read.cgi/tech/1717631290/904
905: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/08(日) 22:39:01.10 ID:zGDX69KT0 何か裏で処理させてて、完了したらポップアップで知らせたい それだけなら方法はいくらでもあるけど、 よし判ったとEnter一発で閉じたい でもポップアップにフォーカスが無いので、いろいろ面倒くさい ポップアップの位置もど真ん中に出ると邪魔なので端に寄せたい でも tkinter でどう頑張ってもそんなことできない http://mevius.5ch.net/test/read.cgi/tech/1717631290/905
906: デフォルトの名無しさん (ワッチョイ 8956-JApX) [sage] 2024/09/08(日) 23:07:02.96 ID:FaHdpY160 ずっと画面見てる前提なら数秒したら消す処理すりゃいいんじゃない? http://mevius.5ch.net/test/read.cgi/tech/1717631290/906
907: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/08(日) 23:08:52.84 ID:zGDX69KT0 そんな前提は無い http://mevius.5ch.net/test/read.cgi/tech/1717631290/907
908: デフォルトの名無しさん (ワッチョイ 9601-+J7s) [sage] 2024/09/08(日) 23:17:36.18 ID:zRsEDrHt0 toastとかOS標準のnotificationを使えばいい キーボードショートカットも用意されてる http://mevius.5ch.net/test/read.cgi/tech/1717631290/908
909: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/08(日) 23:26:26.06 ID:zGDX69KT0 win11toastもinputがあってさえフォーカスは来てないな http://mevius.5ch.net/test/read.cgi/tech/1717631290/909
910: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/08(日) 23:46:26.14 ID:zGDX69KT0 結局、powershellのPopupをsubprocess.runで呼び出すのがベスト それで可能なのは最初から判ってたけども os寄りの処理って互換性とか無視してosべったりで作った方が幸せになれる http://mevius.5ch.net/test/read.cgi/tech/1717631290/910
911: デフォルトの名無しさん (ワッチョイ 2579-OVBJ) [sage] 2024/09/09(月) 05:00:01.20 ID:i0341ZB+0 そこはWin32APIを呼び出したほうが親和性が高いだろう windowsアプリと同じ見てくれ、ふるまいになるし、 デフォルトボタンやフォーカスは確実に有効にできる http://mevius.5ch.net/test/read.cgi/tech/1717631290/911
912: デフォルトの名無しさん (ワッチョイ 7152-76Bl) [sage] 2024/09/09(月) 14:54:53.83 ID:iWr3h1fB0 中央だと邪魔だから端に表示するような種類のポップアップで強制的にフォーカス奪っだらダメだろ 個人専用なら好きにすればいいが他人に使わせるアプリでは絶対やってはいけないパターン http://mevius.5ch.net/test/read.cgi/tech/1717631290/912
913: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/09(月) 15:25:57.69 ID:M6TEicyP0 ポップアップの位置を変えるようなことは、Win32 API使っても無理な気がする 標準に似せたものを自前で作るしか http://mevius.5ch.net/test/read.cgi/tech/1717631290/913
914: デフォルトの名無しさん (ワッチョイ 8aa5-f0zi) [] 2024/09/09(月) 17:58:31.91 ID:XsanjNXu0 WindowsアプリをPythonで作るな! http://mevius.5ch.net/test/read.cgi/tech/1717631290/914
915: 警備員[Lv.29] (ワッチョイ edfe-R7+n) [sage釣] 2024/09/09(月) 19:59:54.08 ID:WqKgF9CS0 カラスの勝手でしょぉ♪ http://mevius.5ch.net/test/read.cgi/tech/1717631290/915
916: デフォルトの名無しさん (アウアウエー Sa52-t/33) [] 2024/09/09(月) 21:10:41.86 ID:6U3TxPzTa ただでさえPOPUPはTOPMOSTにしない方が良いのに TOPMOSTにした上でENTERで反応するPOPUPなんて百害あって一理無しよ http://mevius.5ch.net/test/read.cgi/tech/1717631290/916
917: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/09(月) 21:29:34.03 ID:M6TEicyP0 謎にエスパーされてるけど、topmostが目下の課題 powershellからWScript.ShellのPopupを呼び出すと、 フォーカスは奪ってくれるけどtopmostではない 全画面で動画見てると音はするけど視覚的には気付かない フォーカスがあってかつtopmostというのがやりたい処理なのに http://mevius.5ch.net/test/read.cgi/tech/1717631290/917
918: デフォルトの名無しさん (ワッチョイ 6a9f-mxTq) [sage] 2024/09/09(月) 21:33:40.24 ID:+To1Amul0 表示はOSの通知にして EnterはUIにフォーカスさせるのではなくキー入力をジャックする http://mevius.5ch.net/test/read.cgi/tech/1717631290/918
919: デフォルトの名無しさん (ワッチョイ f910-tR61) [sage] 2024/09/09(月) 21:40:36.79 ID:wEgLJ8040 きっとそのうちEnterで消すのがうざくなる… http://mevius.5ch.net/test/read.cgi/tech/1717631290/919
920: デフォルトの名無しさん (ワッチョイ 2579-OVBJ) [sage] 2024/09/09(月) 22:59:51.52 ID:i0341ZB+0 >>917 "ctypes.windll.user32.MessageBoxW"で MB Typeに"0x40000"を与えれば"MB_TOPMOST"になる >>914 普段はコンソールを立ち上げずにこっそり実行 エラーとか、対話が必要なときだけポップアップが出るようにするのには有用なんだよ no_consoleモード+ポップアップはそんな目的にはぴったりだし http://mevius.5ch.net/test/read.cgi/tech/1717631290/920
921: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/09(月) 23:24:20.06 ID:M6TEicyP0 0x40000足せばいいだけだったのか もう殆ど手が届いてたんだな 262144でかすぎひん http://mevius.5ch.net/test/read.cgi/tech/1717631290/921
922: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/09(月) 23:50:28.10 ID:M6TEicyP0 bit毎に意味があるんじゃなくて、nibble毎に割り振ってるんだな 不思議な設計 http://mevius.5ch.net/test/read.cgi/tech/1717631290/922
923: デフォルトの名無しさん (ワッチョイ 7501-U5Lc) [sage] 2024/09/10(火) 09:46:51.62 ID:V/5rRVOx0 bit毎に意味あるだろ bit fieldでググってこい http://mevius.5ch.net/test/read.cgi/tech/1717631290/923
924: デフォルトの名無しさん (アウアウエー Sa52-t/33) [] 2024/09/10(火) 13:11:16.09 ID:KGjTz1X0a +で良いと思ってる人間と|だろうなと思ってる人間は雲泥の差がある http://mevius.5ch.net/test/read.cgi/tech/1717631290/924
925: デフォルトの名無しさん (ワッチョイ a60a-vlgT) [sage] 2024/09/10(火) 21:10:56.22 ID:sQRxeMB30 >もう殆ど手が届いてたんだな これジョークじゃなきゃキッツいな http://mevius.5ch.net/test/read.cgi/tech/1717631290/925
926: デフォルトの名無しさん (ワッチョイ aaae-voeu) [] 2024/09/13(金) 14:57:50.02 ID:HD5QYSk40 OpenAIが複雑な推論能力をもつAIモデル「OpenAI o1」と「OpenAI o1-mini」を発表、プログラミングや数学で高い能力を発揮 https://gigazine.net/news/20240913-openai-o1/ http://mevius.5ch.net/test/read.cgi/tech/1717631290/926
927: 713 (ワッチョイ ea02-QZ+t) [sage] 2024/09/13(金) 15:23:01.98 ID:Ri3tNWi30 >>926 すごいな 天才プログラマーか http://mevius.5ch.net/test/read.cgi/tech/1717631290/927
928: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/13(金) 21:29:13.87 ID:jtrlU5c10 何かあった時に失われるのが嫌なので、 ログとか出力する時に1行毎にopenして書いて閉じてるけど、 flush=True を付けるのと違いあるんだろうか http://mevius.5ch.net/test/read.cgi/tech/1717631290/928
929: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/13(金) 21:34:14.83 ID:jtrlU5c10 違いあるんだろうかシリーズ リストをソートしたいと思った時、ふつーに l = sorted(l) と書いたけど、そういえば l.sort() という方法もあった 気持ち悪いので本能的に避けたいけど、わざわざ用意されてるメリットって何だろう 計算コストは同じな気がする http://mevius.5ch.net/test/read.cgi/tech/1717631290/929
930: デフォルトの名無しさん (ワッチョイ 916d-vlgT) [sage] 2024/09/13(金) 22:31:20.25 ID:C+esSXth0 同じじゃない くだすれ行け http://mevius.5ch.net/test/read.cgi/tech/1717631290/930
931: デフォルトの名無しさん (ワッチョイ f9bf-BHET) [] 2024/09/13(金) 22:35:10.99 ID:3+j4DpP00 >>929 一般的には追加のメモリ確保をしない l.sort() の方が効率的 l を再代入してるから分かりにくいけど、ソート結果は元の l とは別の領域に作られてる これは、k = sorted(l) と書いた時にソート前後の両方のリストがオブジェクトとして存在することからも分かると思う (l = sorted(l) は、追加のリストを作ったあとに l の参照先を新しいものに置き換えてる) l.sort() だと元々あった l の領域内でソートされるので、追加のメモリ確保がいら
ない 要素数が小さいと気になることは無いと思うけど、例えば要素が10万個とかある場合だとだいぶ差が出ると思う http://mevius.5ch.net/test/read.cgi/tech/1717631290/931
932: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/13(金) 23:01:27.70 ID:jtrlU5c10 メモリ確保するのってそんなに重い処理なの? http://mevius.5ch.net/test/read.cgi/tech/1717631290/932
933: デフォルトの名無しさん (ワッチョイ f9bf-BHET) [] 2024/09/13(金) 23:50:13.06 ID:3+j4DpP00 >>932 一般的には重い処理 とはいっても、小さな量だと問題にならない 例えば画像処理の分野で、HDや4Kサイズの画像を1000枚処理したいといった話だと、メモリを毎回確保するか一度だけ確保したものを使い回すかで処理時間はだいぶ変わる (体感できるくらいに) http://mevius.5ch.net/test/read.cgi/tech/1717631290/933
934: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/13(金) 23:57:27.00 ID:jtrlU5c10 なるほどー Cの時点でmallocが具体的に何してるか知らんしな 既に連続した空き容量があって割り当てるだけなら一瞬だろうけど、 いろいろ地上げしたり大変なんだろう http://mevius.5ch.net/test/read.cgi/tech/1717631290/934
935: 警備員[Lv.30] (ワッチョイ edfe-R7+n) [sage釣] 2024/09/14(土) 00:15:53.13 ID:ed1VLorT0 まとまった容量ならsbrk()使えって言われなかった? http://mevius.5ch.net/test/read.cgi/tech/1717631290/935
936: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/14(土) 00:43:58.26 ID:uwwiah/a0 メモリ確保はO(n)でソートは下手したらO(n^2)だから、 nが大きいほどトータル処理時間に占めるメモリ確保の割合はむしろ小さくなるのでは http://mevius.5ch.net/test/read.cgi/tech/1717631290/936
937: デフォルトの名無しさん (ワッチョイ 9afb-76Bl) [sage] 2024/09/14(土) 02:05:41.53 ID:xMffrK+40 >>936 その2つのnは全く別のものだろ アホか http://mevius.5ch.net/test/read.cgi/tech/1717631290/937
938: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/14(土) 06:27:04.06 ID:uwwiah/a0 nが小さい場合: メモリ確保の比率は大きいけどどうせ一瞬だから気にしない nが大きい場合: メモリ確保にも時間かかるけど、ソート時間が圧倒的だから気にしない 結局、気分の問題だけど、 破壊的な操作が嫌とか言ったらappend()とかできないし、 ミュータブルはそういうものと思うしか http://mevius.5ch.net/test/read.cgi/tech/1717631290/938
939: デフォルトの名無しさん (ワッチョイ f99f-BHET) [] 2024/09/14(土) 07:44:59.11 ID:c0KErmyP0 ソートのコストとメモリ確保のコストは別々にかかるものだし、減らせるなら減らした方が良いと思う 自分のプログラムが扱うデータが小さくてsortedでもほぼ変わらないなら、こちらでも良い 自分も書き方自体は sorted の方が好きだし小さいプログラムならこちらを使ってるけど、そこは好みの問題なのでお好みで http://mevius.5ch.net/test/read.cgi/tech/1717631290/939
940: デフォルトの名無しさん (アウアウエー Sa52-t/33) [] 2024/09/14(土) 13:33:03.30 ID:o3f0Ddoea l.sort() はみみっちい領域でやりくりする分アルゴリズムは遅くなりそう l = sorted(l) あるいは k = sorted(l) が富豪的で結果的に速い可能性はある http://mevius.5ch.net/test/read.cgi/tech/1717631290/940
941: デフォルトの名無しさん (ワッチョイ 6634-5gfH) [sage] 2024/09/14(土) 14:16:06.35 ID:tQni2TQM0 メモリ使いまくりはキャッシュ効率下がるから 一律に富豪が強いとは限らない 使うしかない時は強いけど http://mevius.5ch.net/test/read.cgi/tech/1717631290/941
942: デフォルトの名無しさん (ワッチョイ 1101-KYWP) [sage] 2024/09/14(土) 14:50:34.43 ID:aiF3uBwH0 >>940 可能性無いよ sorted()は内部でlist.sort()の実装を呼び出してる ざっくり言えば new_list = list(original_list) new_list.sort() return new_list http://mevius.5ch.net/test/read.cgi/tech/1717631290/942
943: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/14(土) 16:15:00.42 ID:uwwiah/a0 for item in sorted(l): とやるよりも l.sort() for item in l: の方が速い、みたいな話 明示的にしろ暗黙にしろ、オブジェクトのコピーにいちいち気を使いたくない コピーするだけで時間がかかるようなオブジェクトになりそうなら、 最初からそうならない実装にする http://mevius.5ch.net/test/read.cgi/tech/1717631290/943
944: デフォルトの名無しさん (オッペケ Srbd-bQm6) [sage] 2024/09/14(土) 19:29:07.00 ID:WN+ppFgMr seleniumのxpathについて質問です 5chの書き込み欄のxpathを確認し、 driver.find_element(By.XPATH, '//*[@id="js-postform_message"]').click() と書いたのですが、プログラムを実行するとxpathが存在しないパターンの動作をしてしまいます ブラウザでF12キーを押し、書き込み欄をクリックしてxpathをコピーするというよくある方法を使っているのですが、これではダメなんですかね? http://mevius.5ch.net/test/read.cgi/tech/17176312
90/944
945: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/14(土) 19:38:44.99 ID:uwwiah/a0 driver.page_source を保存しておいて解析する http://mevius.5ch.net/test/read.cgi/tech/1717631290/945
946: デフォルトの名無しさん (ワッチョイ 4954-okkI) [sage] 2024/09/14(土) 19:50:56.07 ID:uwwiah/a0 書き込みボタンは //*[@id="js-postform_submit"] で、 //*[@id="js-postform_message"] は書き込み欄なので、clickではなくsend_keys http://mevius.5ch.net/test/read.cgi/tech/1717631290/946
947: デフォルトの名無しさん (オッペケ Srbd-bQm6) [sage] 2024/09/14(土) 20:01:37.67 ID:reS5hF+Mr ありがとうございます send_keysは別の行にあります 一応clickの部分は行ごと消しましたがやはりダメですね… http://mevius.5ch.net/test/read.cgi/tech/1717631290/947
948: デフォルトの名無しさん (オッペケ Srbd-bQm6) [sage] 2024/09/14(土) 20:51:28.72 ID:reS5hF+Mr エラーをちゃんと見られるようにしたら、 name 'By' is not defined と出ました また要素関係の書き方が変わったんですかね? 以前は上記の driver.find_element(By.XPATH, '//*[@id="js-postform_message"]') という書き方で動いていたのですが… 書き方変更などの情報はどこで入手するのか… http://mevius.5ch.net/test/read.cgi/tech/1717631290/948
949: デフォルトの名無しさん (ワッチョイ ea61-IU9Y) [sage] 2024/09/14(土) 20:56:59.72 ID:hpW9Sln40 from selenium.webdriver.common.by import By http://mevius.5ch.net/test/read.cgi/tech/1717631290/949
950: デフォルトの名無しさん (オッペケ Srbd-bQm6) [sage] 2024/09/14(土) 20:58:25.69 ID:reS5hF+Mr >>949 ありがとうございます!解決しました! それをコメントアウトしてしまっていました… http://mevius.5ch.net/test/read.cgi/tech/1717631290/950
951: デフォルトの名無しさん (スプッッ Sd3f-18DD) [sage] 2024/09/16(月) 15:32:29.19 ID:JFhhEPMwd pandasやべえな マジで融通効かねえ おなえらよくこんなもん使ってるな http://mevius.5ch.net/test/read.cgi/tech/1717631290/951
952: デフォルトの名無しさん (スプッッ Sd3f-18DD) [sage] 2024/09/16(月) 15:33:30.66 ID:JFhhEPMwd pandasに持っていくのは最終工程だな http://mevius.5ch.net/test/read.cgi/tech/1717631290/952
953: デフォルトの名無しさん (ワッチョイ 7754-QNcw) [sage] 2024/09/16(月) 15:45:45.85 ID:5ZHFYrcP0 df.loc('name') じゃなくて df.loc['name'] なのが中身どうなってんのと思う これはプロパティだからと言われてそんなもんかと思ってたけど、 別に角括弧はプロパティの特徴じゃないし http://mevius.5ch.net/test/read.cgi/tech/1717631290/953
954: デフォルトの名無しさん (ワッチョイ b701-2Yct) [sage] 2024/09/16(月) 16:18:34.31 ID:64X1rAF60 df.locが返すインスタンスに__getitem__が定義されてる http://mevius.5ch.net/test/read.cgi/tech/1717631290/954
955: デフォルトの名無しさん (ワッチョイ 57b4-18DD) [] 2024/09/16(月) 17:26:32.35 ID:oHCpo/jD0 >>951 そう? 融通効かない処理は普通にリストとかに変換したり、iterrowsしたりすれば大体できて、 95%のやりたいことのほとんどはpandasで用意されてるメソッド・関数でできる気がするけど http://mevius.5ch.net/test/read.cgi/tech/1717631290/955
956: 713 (ワッチョイ 9f02-y7MN) [sage] 2024/09/16(月) 18:17:47.48 ID:qB1csSl90 pandas使う職業って何? バックエンドエンジニアとか? http://mevius.5ch.net/test/read.cgi/tech/1717631290/956
957: デフォルトの名無しさん (ワッチョイ 979f-F2UQ) [sage] 2024/09/16(月) 18:46:53.38 ID:7NWwbbi+0 学生です http://mevius.5ch.net/test/read.cgi/tech/1717631290/957
958: デフォルトの名無しさん (ワッチョイ f74d-MiX1) [sage] 2024/09/16(月) 19:14:36.94 ID:sHL0iTWh0 かぐる とかデータサイエンス http://mevius.5ch.net/test/read.cgi/tech/1717631290/958
959: デフォルトの名無しさん (ワッチョイ 7754-QNcw) [sage] 2024/09/16(月) 19:40:30.88 ID:5ZHFYrcP0 データ渡すと加工して文字列にしてくれる関数名 make, create, generate どれがいいだろう http://mevius.5ch.net/test/read.cgi/tech/1717631290/959
960: デフォルトの名無しさん (ワッチョイ 979f-F2UQ) [sage] 2024/09/16(月) 19:52:09.23 ID:7NWwbbi+0 それら候補でいうならどれでもよくって どういう文字列を生成するか説明できる修飾が大事かな http://mevius.5ch.net/test/read.cgi/tech/1717631290/960
961: デフォルトの名無しさん (スッップ Sdbf-RV1S) [sage] 2024/09/17(火) 09:30:50.73 ID:mIyBA525d 同意 むしろ俺なら動詞なしで「どういった文字列か」を表す名詞だけにしたい http://mevius.5ch.net/test/read.cgi/tech/1717631290/961
962: デフォルトの名無しさん (アウアウエー Sadf-N1Zj) [] 2024/09/17(火) 10:19:17.42 ID:TMGdiCOOa >>959 convert http://mevius.5ch.net/test/read.cgi/tech/1717631290/962
963: デフォルトの名無しさん (アウアウエー Sadf-N1Zj) [] 2024/09/17(火) 10:20:30.50 ID:TMGdiCOOa >>951 Pandasは行指向じゃなくて列指向だと判ればあとは簡単 http://mevius.5ch.net/test/read.cgi/tech/1717631290/963
964: デフォルトの名無しさん (アウアウエー Sadf-N1Zj) [] 2024/09/17(火) 10:23:43.89 ID:TMGdiCOOa >>943 >明示的にしろ暗黙にしろ、オブジェクトのコピーにいちいち気を使いたくない >コピーするだけで時間がかかるようなオブジェクトになりそうなら、 >最初からそうならない実装にする まあこれは真実で それならオブジェクトを保持するためのオブジェクトと ソートするためだけのインデックスを分けるかな http://mevius.5ch.net/test/read.cgi/tech/1717631290/964
965: デフォルトの名無しさん (ワッチョイ 1779-0tQg) [sage] 2024/09/17(火) 10:55:41.47 ID:rwC9vNLN0 pandasはもう古いよ polarsがついにv1公開されたからそれに移行した loc["name"]みたいなのも消えてる というよりインデックスというゴミが消えてる http://mevius.5ch.net/test/read.cgi/tech/1717631290/965
966: デフォルトの名無しさん (ワッチョイ ff32-uXkv) [] 2024/09/17(火) 10:56:23.24 ID:bvtQXCJ00 複数のエクセルファイルから特定列のデータを抜き出して 新たにエクセルファイルにまとめて書き出すということをしたのですが、 複数ファイルには重複する行が含まれていて、 下記の2つを試したのですがどちらも欠損データが生じました。 1.listに一旦全部入れて、最終的にsetに一旦変換してlistに戻す 2.1行ごとに最終的なリストに含まれていない要素をチェックしながら追加 データは5列で最終的に重複処理したもので300行程度、 重複処理前でも2000行
余りぐらいのデータです。 最終的にpandasで全部一旦追加した後df.drop_duplicates()にて処理して問題なく処理されたのですが 下記の方法で欠損することとかあり得るのでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1717631290/966
967: デフォルトの名無しさん (ワッチョイ 1779-0tQg) [sage] 2024/09/17(火) 12:11:47.72 ID:rwC9vNLN0 >>959 data2str http://mevius.5ch.net/test/read.cgi/tech/1717631290/967
968: デフォルトの名無しさん (ワッチョイ 1779-0tQg) [sage] 2024/09/17(火) 12:16:27.92 ID:rwC9vNLN0 >>966 各列をそれぞれlistにしてsetにしたのか? それだと各列ごとに重複削除するから行レベルでは重複してないものも消えそうだが http://mevius.5ch.net/test/read.cgi/tech/1717631290/968
969: デフォルトの名無しさん (ワッチョイ ff32-uXkv) [] 2024/09/17(火) 13:30:30.55 ID:bvtQXCJ00 >>968 1,2とも各行””.joiin(list)してから処理しています。 http://mevius.5ch.net/test/read.cgi/tech/1717631290/969
970: デフォルトの名無しさん (ワッチョイ 7754-QNcw) [sage] 2024/09/17(火) 14:23:18.11 ID:5SGUmRCR0 >>962 処理内容はconvertだけど、目的語が元データになってしまう convert_to_newdata にしないと、 convert_newdata だと絶対間違う http://mevius.5ch.net/test/read.cgi/tech/1717631290/970
971: デフォルトの名無しさん (ワッチョイ 7f01-BggN) [sage] 2024/09/17(火) 14:53:19.06 ID:ifJb33l00 >>969 ["1", "", "2", "", "3"]と["1", "2", "3", "", ""]は重複? とりあえずtuple(list)してから処理してみれば? http://mevius.5ch.net/test/read.cgi/tech/1717631290/971
972: デフォルトの名無しさん (ワッチョイ 7f01-BggN) [sage] 2024/09/17(火) 14:58:45.05 ID:ifJb33l00 >>967 こういう命名をするとよくわかるように「データ渡すと加工して文字列にしてくれる関数名」というふわっとした問題設定がそもそも間違ってる可能性が高い http://mevius.5ch.net/test/read.cgi/tech/1717631290/972
973: デフォルトの名無しさん (ワッチョイ ff32-uXkv) [sage] 2024/09/17(火) 15:55:41.11 ID:bvtQXCJ00 >>971 基本空白は入っていないので["1", "2", “3”]の形式になりますが 元がexcelなのでデータを見ると何かが混じっている可能性はありますね 少し余裕が出たら検証してみます http://mevius.5ch.net/test/read.cgi/tech/1717631290/973
974: デフォルトの名無しさん (ワッチョイ 7754-QNcw) [sage] 2024/09/17(火) 16:40:41.16 ID:5SGUmRCR0 人間用excelを読み込むと全然ちゃんとしてないので、 全セルを配列に読み込んで、文字列検索でタイトル行を探して、 データ範囲らしき部分を割り出して、それでもエラーは出るのでいろんなケースに対応して、 みたいなひたすら泥臭いコードになる 取り消し線で削除するのやめて http://mevius.5ch.net/test/read.cgi/tech/1717631290/974
975: デフォルトの名無しさん (ワッチョイ ff32-uXkv) [] 2024/09/17(火) 18:07:41.72 ID:bvtQXCJ00 上の方でpolarsを知ったので、ちょっと試してたのですがやり方がわかりません。 2つのDFを比較して、A,B列の値が共通の場合新しい方のDFの行を使ってDFを作成するということがやりたいです。 以下のpandasの処理をpolarsでやりたいときどのようにしたら良いんでしょう? filtered_df = dfOLD[~(dfOLD[“A”].isin(dfNEW[“A”]) & dfOLD[“B”].isin(dfNEW[“B”]))] concat_df = pd.concat([dfNEW, filtered_df], axis=0, ignore_index=True) http://
mevius.5ch.net/test/read.cgi/tech/1717631290/975
976: デフォルトの名無しさん (ワッチョイ 7f01-BggN) [sage] 2024/09/17(火) 18:29:39.94 ID:ifJb33l00 >>973 空白は一つの例だよ 他にもtuple(list)で比較するのと"".join(list)で比較するのでは結果が異なるケースあるでしょ それに今現在処理してるデータにそういうケースが含まれてるかどうかを調べるよりも まずは要求仕様として列を連結した文字列が同じなら重複としてみなすのかどうかが大事 みなす仕様ならdf.drop_duplicates()を使うのは間違ってる みなさない仕様なら"".join(list)で比較するのは間違ってる http
://mevius.5ch.net/test/read.cgi/tech/1717631290/976
977: デフォルトの名無しさん (ワッチョイ d7b3-E6+g) [sage] 2024/09/18(水) 05:40:32.41 ID:X/am8lpR0 >>956 飼育員とか http://mevius.5ch.net/test/read.cgi/tech/1717631290/977
978: デフォルトの名無しさん (ワッチョイ ff32-uXkv) [sage] 2024/09/18(水) 10:09:46.84 ID:cY7mpOqC0 自己レスです。意外とあっさり出来ました。> 975 import polars as pl df1 = pl.DataFrame({"a": ['A1','A2','A3','A4'], "b": ['B1', 'B2', 'B3', 'B4'], "c": ['100', '200', '300', '400']}) df2 = pl.DataFrame({"a": ['A1','A2','A3'], "b": ['B1', 'B2', 'B3'], "c": ['150', '250', '350']}) filterDF = df1.join(df2, on=['a','b'], how="anti") concatDF = pl.co
ncat([df2, filterDF]) print(filterDF,concatDF) http://mevius.5ch.net/test/read.cgi/tech/1717631290/978
979: デフォルトの名無しさん (ワッチョイ 7754-QNcw) [sage] 2024/09/18(水) 19:08:32.27 ID:6/+t/jhb0 単位の数Uがあって、nとUに対して int(n/U)*U を返す関数はどういう名前がいいだろう http://mevius.5ch.net/test/read.cgi/tech/1717631290/979
980: デフォルトの名無しさん (ワッチョイ 979f-F2UQ) [sage] 2024/09/18(水) 20:05:30.82 ID:EisHWYAH0 floor/round_down/align + (to +) unit/multiple http://mevius.5ch.net/test/read.cgi/tech/1717631290/980
981: デフォルトの名無しさん (ワッチョイ ff34-9HnH) [sage] 2024/09/18(水) 20:09:46.82 ID:pnKtz9DD0 discretizeとか? http://mevius.5ch.net/test/read.cgi/tech/1717631290/981
982: デフォルトの名無しさん (ワッチョイ ff34-9HnH) [sage] 2024/09/18(水) 21:47:38.42 ID:pnKtz9DD0 音楽ソフトなんかでは 拍子の位置に揃えるのを quantizeって言うな http://mevius.5ch.net/test/read.cgi/tech/1717631290/982
983: デフォルトの名無しさん (ワッチョイ ffd6-zJrB) [sage] 2024/09/18(水) 22:23:17.78 ID:9wk3LXWe0 n//U*Uと(n+U-1)//U*Uが区別できる命名にしたいね http://mevius.5ch.net/test/read.cgi/tech/1717631290/983
984: デフォルトの名無しさん (ワッチョイ 577c-18DD) [] 2024/09/19(木) 18:45:28.76 ID:WvuWfkM50 >>979 普通はtruncateじゃない?SQLにTRUNC関数がある http://mevius.5ch.net/test/read.cgi/tech/1717631290/984
985: デフォルトの名無しさん (ワッチョイ 9f9e-0tQg) [sage] 2024/09/19(木) 19:05:10.19 ID:Cti+u+u60 MATLABのfloor(x, unit)と同じだからfloorだろう http://mevius.5ch.net/test/read.cgi/tech/1717631290/985
986: デフォルトの名無しさん (ワッチョイ 7754-QNcw) [sage] 2024/09/19(木) 19:26:31.64 ID:dEupb3oa0 floorか 整数へのfloorはunit=1の特殊ケース http://mevius.5ch.net/test/read.cgi/tech/1717631290/986
987: デフォルトの名無しさん (ワッチョイ 1772-9HnH) [sage] 2024/09/19(木) 19:34:49.21 ID:bCkvflxL0 整数化のfloorが有名過ぎて 混同の可能性ない? http://mevius.5ch.net/test/read.cgi/tech/1717631290/987
988: デフォルトの名無しさん (ワッチョイ b701-k4xX) [sage] 2024/09/19(木) 23:17:36.39 ID:Fum1rv8F0 関数の命名は内部実装がどうなってるかではなく どういう意図でその関数を呼ぶのかという観点を第一とすべき そのための第一歩は自然言語で意図を記述すること それができてないうちは適切な命名とか無理 http://mevius.5ch.net/test/read.cgi/tech/1717631290/988
989: デフォルトの名無しさん (アウアウエー Sadf-3vlU) [sage] 2024/09/20(金) 11:26:49.09 ID:ZOd0SPdka appendとかaddとかpushとか滅茶苦茶 http://mevius.5ch.net/test/read.cgi/tech/1717631290/989
990: デフォルトの名無しさん (ワッチョイ 7754-QNcw) [sage] 2024/09/20(金) 11:52:25.51 ID:L1lWeffx0 strだとreplaceでreだとsubなのやめて欲しい http://mevius.5ch.net/test/read.cgi/tech/1717631290/990
991: デフォルトの名無しさん (ワッチョイ 9f80-8z35) [sage] 2024/09/20(金) 11:58:37.64 ID:kOrYHKy20 >>988 趣味でやってる人は仕様とかテストに縁がないからそういう感覚がたぶん分からないんだよ http://mevius.5ch.net/test/read.cgi/tech/1717631290/991
992: デフォルトの名無しさん (ワッチョイ 577c-18DD) [] 2024/09/20(金) 13:09:25.28 ID:60VyqBLX0 >>985-987 数学的には、floorとかceilとかはunit=1のことしか指さない関数(というか、ℝ→ℤでそもそも定義域と値域の集合が異なるともいえる)なんだよねえ。この辺をどう見るか。 Python風に言えば、int(float_val)と、math.floor(float_val)は型が違うでしょう?という ただ、>>988 のいっているように、これらは、絶対に考慮しなければならないことではなく、文脈依存だと思う。 https://ja.m.wikipedia.org/wiki/床関数と天
井関数 http://mevius.5ch.net/test/read.cgi/tech/1717631290/992
993: デフォルトの名無しさん (ワッチョイ 7ff1-18DD) [sage] 2024/09/20(金) 13:16:40.50 ID:opX5hmp20 >>979 単位変換くん2 http://mevius.5ch.net/test/read.cgi/tech/1717631290/993
994: デフォルトの名無しさん (ワッチョイ 7754-QNcw) [sage] 2024/09/20(金) 13:19:35.67 ID:L1lWeffx0 return int(n/unit)*unit とすると、unitをintで与えるとintで返って、 floatで与えるとfloatで返る 直線を階段状に変換する図としては相似で、 階段の高さが1なのかそれ以外なのか 1以外だとして整数である必要もなく、有理数への自然な拡張に見える http://mevius.5ch.net/test/read.cgi/tech/1717631290/994
995: デフォルトの名無しさん (アウアウエー Sadf-N1Zj) [] 2024/09/20(金) 14:17:35.31 ID:ZOd0SPdka >>994 >return int(n/unit)*unit >とすると、unitをintで与えるとintで返って、 >floatで与えるとfloatで返る return int(float(n)/unit)*unit って描いた方が良いよ http://mevius.5ch.net/test/read.cgi/tech/1717631290/995
996: デフォルトの名無しさん (ワッチョイ f773-3oJL) [sage] 2024/09/20(金) 15:38:24.41 ID:FmKVvlRa0 pandasのto_excelってopenpyxlを使ってるんだな http://mevius.5ch.net/test/read.cgi/tech/1717631290/996
997: デフォルトの名無しさん (ワッチョイ 7754-QNcw) [sage] 2024/09/20(金) 15:58:36.50 ID:L1lWeffx0 openpyxlの遅さは実用にならないレベル テスト用の小さいファイルでも普通に遅い 本番の大きなファイルだと数時間単位かかる http://mevius.5ch.net/test/read.cgi/tech/1717631290/997
998: デフォルトの名無しさん (ワッチョイ ff32-uXkv) [sage] 2024/09/20(金) 16:09:16.36 ID:O/CsEend0 大きなファイルって何万行ぐらいあんの? http://mevius.5ch.net/test/read.cgi/tech/1717631290/998
999: デフォルトの名無しさん (ワッチョイ 7756-b6L8) [sage] 2024/09/21(土) 06:41:17.65 ID:webYnJz00 エクセル作業の自動化でpythonでプログラム書いて完成はしたんだけど、書き込みが遅すぎる。 普通に手動でエクセル開いて書き込んで閉じた方が早いレベル。 マクロ含んでるからopenpyxlを使わないとダメだし、調べたらwrite_onlyモードにすると早いってあったけど、あれって新規でブック作る為のやつだよね。 何かいいのないのかしら。 http://mevius.5ch.net/test/read.cgi/tech/1717631290/999
1000: デフォルトの名無しさん (ワッチョイ 9745-18DD) [sage] 2024/09/21(土) 08:47:29.73 ID:yFilHDZF0 Excelのない環境で動作させんじゃなきゃ ネイティブのスクリプト(TypeScript)使うのが素直 http://mevius.5ch.net/test/read.cgi/tech/1717631290/1000
1001: 1001 [] ID:Thread このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 106日 23時間 59分 20秒 http://mevius.5ch.net/test/read.cgi/tech/1717631290/1001
1002: 1002 [] ID:Thread 5ちゃんねるの運営はUPLIFT会員の皆さまに支えられています。 運営にご協力お願いいたします。 ─────────────────── 《UPLIFT会員の主な特典》 ★ 5ちゃんねる専用ブラウザからの広告除去 ★ 5ちゃんねるの過去ログを取得 ★ 書き込み規制の緩和 ─────────────────── 会員登録には個人情報は一切必要ありません。 4 USD/mon. から匿名でご購入いただけます。 ▼ UPLIFT会員登録はこちら ▼ https://uplift.5ch.net/ ▼ UPLIFTログインはこちら ▼ https://uplift.5ch.net/login
http://mevius.5ch.net/test/read.cgi/tech/1717631290/1002
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.030s