Pythonのお勉強 Part69

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ c733-stRS)
垢版 |
2022/11/24(木) 21:39:44.67ID:A6xfpKBe0
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。

・当スレにRubyのソースコード類を書くことを禁ず
・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
・エラーを解決したいときは、かならず
 エラー文(勝手に省略orスクショうp等の横着禁止)と
 おま環(Pythonのバージョン番号+OS名とバージョン+IDE名)を書け。

★Pythonのソースコードを5ちゃんに直貼はインデントが崩壊するので、
  ↓等のコードうp用サイトに貼ってきてくだしあ。(スクリーンショットをうpる「横着」禁止)
ttps://techiedelight.com/compiler/  Run Code機能あり。
ttp://ideone.com/      デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数は十分長ーく指定のこと。

◇Pythonオフィシャルサイト http://www.python.org/
◇Pythonドキュメント https://docs.python.org/ja/3/
◇まとめwiki ttp://python.rdy.jp/

●関連スレ● 自称初心者は↓へ
【まず1嫁】くだすれPython(超初心者用) その58
https://mevius.5ch.net/test/read.cgi/tech/1662514433/

〇前スレ〇
Pythonのお勉強 Part68
https://mevius.5ch.net/test/read.cgi/tech/1663235546/

次スレの建立は>>985が挑戦する。(980通過して24h後も落ちなくなった)
### END of TEMPLATE ### ?
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
2022/12/03(土) 17:03:14.55ID:hui5F7Ye0
実測してみればいいのに
2022/12/03(土) 17:15:26.84ID:xZYRIIQ3
>>86
なるほどそうなんですね
前者だと、len(df)の回数だけループしてdf[""]に結果が代入される、をdf[""]=の行だけ繰り返すようなイメージで
例えばlen(df)が10万あったとしたら、10万ループ後にまた10万ループ…、みたいなことかと思ってました

実測してみました(合っているかどうかわかりませんが
かなり遅くなりましたね

import pandas as pd
import time
df=pd.DataFrame({"A":range(0,10000,1),"B":range(10000,20000,1),"C":range(20000,30000,1)})
start=time.time()
df["A+B"]=df["A"]+df["B"]
df["A+C"]=df["A"]+df["C"]
end=time.time()
print(end-start)

start=time.time()
df["A+B"]=0
df["A+C"]=0
for i in range(len(df)):
 df["A+B"].iloc[i]=df["A"].iloc[i]+df["B"].iloc[i]
 df["A+C"].iloc[i]=df["A"].iloc[i]+df["C"].iloc[i]
end=time.time()
print(end-start)

#0.0027747154235839844
#5.960754871368408
89デフォルトの名無しさん (ワッチョイ 4697-KDKu)
垢版 |
2022/12/03(土) 17:44:15.36ID:YuLtkiXA0
>>88
C/C++言語で似たような処理をうまく実装すれば、基本的にはどっちの書き方でもそんなに違わないのだけどね。
結局は行数×2の足し算をしなければいけないのは、どうループを回そうが同じ
(厳密にはCPUのキャッシュに載る書き方をするかどうかとかで性能は違うかもだけど)

Pandasの場合、DataFrameは、実は列ごとのデータであるSeriesをくっつけてるだけで、
列と列を足して新しいSeriesを作るような演算は、Series同士の演算ということで専用のCのコードが走ってロスが少ない。
一方1行ごとにPythonのforループで値を取り出して出すと、Pythonの遅いループのせいで遅くなる。
NumPyでもPandasでも、ブロードキャストせず値を一個一個取り出すような処理はめちゃくちゃ遅くなるからどうしようもない場合以外避けるべき。
2022/12/03(土) 17:51:36.28ID:hui5F7Ye0
外部モジュール使わない場合でも、
本当にループを書くより、同等の処理が一行で書ける系の書き方の方が速い
2022/12/03(土) 18:32:31.91ID:H3EtATlxa
>>84
富豪になれ
2022/12/03(土) 18:35:20.84ID:H3EtATlxa
iでループするとiというPyObjectにいちいちアクセスするから無駄が増える
2022/12/03(土) 20:52:15.48ID:AKVIlfb6M
計算よりもコードの解釈10000回に掛かる時間が長いのよ
2022/12/03(土) 21:05:08.47ID:hui5F7Ye0
実はこっそりコンパイルしてるだろと思っても本当にインタプリタなんだよな
変数名とか間違ってても到達しなければエラーにならない
2022/12/03(土) 21:18:53.10ID:pO2d8Q/6a
今時JITもない純粋なインタプリタだしな
どう考えても速くはならない
2022/12/03(土) 22:10:50.47ID:aUunlJ3Sd
>>84
O記法に使われるのは極限の値だからO(n)もO(2n)も大差がない一次関数的オーダーとみなされる
2022/12/03(土) 23:18:09.05ID:AKVIlfb6M
スクリプトなのを逆手に取ったトリッキーな事も出来るけどね
変数名を辞書のキーに使ってウィジェットを管理することでeval関数で自動同期できたりとか
2022/12/03(土) 23:25:00.89ID:hui5F7Ye0
perlはコンパイルしてから動くのに、evalで動的なことできるんだよな
あいつが一番気持ち悪い
2022/12/04(日) 00:54:32.96ID:E/Vw0mdO0
>>84
後者も毎回2行の処理があるから2nだよね
2022/12/04(日) 10:22:35.31ID:2Pwe8xJ8a
Oが下がってもループそのものをpythonで描いてる限り速くならんって話だろ
101デフォルトの名無しさん (ワッチョイ 972c-JkWk)
垢版 |
2022/12/04(日) 10:53:22.33ID:AtzUGoNp0
>>97
もうちょっと詳しく聞きたい
2022/12/04(日) 11:16:52.00ID:1/Hu21BBd
ChatGPTがやばい

たとえばネットで公開されてるプログラムのソースコードを渡したらめちゃくちゃ詳細に教えてくれる
自分はpython初心者だけど、理解できるレベルに噛み砕いて説明してもらえる

ここまですごいと「プログラム勉強する意味とは?」と不安になってくる
本当に「AIにやらせりゃいい」の時代が来る
これから人類は、仕事の価値が安すぎてロボットやAIにやらせないような、隙間の部分を仕事にしていくしかないかも

金銭的な資産がない状態から、技術を通して一定の財産を築いていくことは難しくなっていって
資産がある人間は苦労もせずさらに財産を増やせる、という社会構造だけが残ってしまうのでは
2022/12/04(日) 12:10:29.10ID:vdoNuXff0
ひらめいた
2022/12/04(日) 13:23:26.47ID:0ZfK2JLIM
>>101
自分はtkinterをクラス化して使ってるんだけど
ウィジェットを管理するクラスと、1つの変数に対応した複数のウィジェット持つフレームクラス(ラベル、インプット、ボタン)の2種類があって
管理クラスにウィジェットのタイプと変数名を渡せば、ウインドウ内に配置して、変数との同期を自動でやってくれるって感じにしてる
管理クラスは辞書で変数名をキーに、フレームオブジェクトを値として持っていて
updateを呼び出すとevalとexecをループで回して同期を行う感じ
色を変えたり、タイトルを変えたりするときは変数名をハンドル代わりにしてアクセスする
変数には共有のモジュール変数を使う必要があるけどね
2022/12/04(日) 14:29:21.47ID:XaoAEs7Da
>>98
それrubyもpythonもphpも同じだぞ
2022/12/04(日) 14:40:23.35ID:CjwdkMkG0
rubyは知らんけど、phpはどう考えてもコンパイルしとらんだろ
2022/12/04(日) 14:45:10.78ID:XaoAEs7Da
コンパイルというのが機械語という意味なら
むしろPHPはJITなので1番してる
Rubyは最近YJITというのが入ってデフォルトでオフだが
オンにするとJITが走る
pythonはJITはしてないがVMの中間言語にコンパイルして実行している
perlもJITなしのVM中間言語にコンパイル
2022/12/04(日) 14:46:34.14ID:XaoAEs7Da
つまりどの言語も何かしらの中間言語にコンパイルはしている
その後JITするかは処理系の実装次第
これはV8やJSCでも同じ
2022/12/04(日) 14:48:27.42ID:CjwdkMkG0
そら、ソースファイルを実行できんし
全ての言語がプロセッサが実行できる形式に変換はしとるわ
言ってるのはそういうことではない
2022/12/04(日) 15:10:34.41ID:LiTniMSdM
お前らのバカさかげんには
開いた口が塞がらない笑笑

コンパイラ作ったことないのか?
なにがJITだバカw
2022/12/04(日) 15:44:47.04ID:OHPAilb60
JITはJIT(just in time)コンパイラの略なんだが...
2022/12/04(日) 15:50:06.61ID:qWdYVkpM0
BASICの時代から中間言語使ってるしな
2022/12/04(日) 16:00:54.70ID:XaoAEs7Da
>>110
かわいそう
2022/12/04(日) 17:22:39.36ID:OHPAilb60
今時の実用言語で純粋にインタプリタ形式なのはシェルスクリプトぐらいじゃないかな
2022/12/04(日) 17:56:55.17ID:AMZRvu8s0
>>104
時間の問題でしょ
アメリカでは自律のタクシーが稼働しているぐらいだし
時間の問題で労働人口は大幅に減る

その前に役所系の手続きをなんとかして欲しいけど
引っ越した時のナンバープレート交換とか
1番並んで、10番並んで、15番並んでと、、延々と指示されたところに行って並んで
書類提出して待つってことを朝からやり続けてプレート付けて帰るまで1日かかったけど
中国人が途中でキレて「お前いくらもらってるんだ?すぐ出来ないのか!」とか怒鳴ってたけど
もうあり得ない
2022/12/04(日) 19:21:18.01ID:o3Jeub4td
スレチの話するや釣って安価すら間違うから始末に負えない
2022/12/04(日) 19:25:47.00ID:HgjSOVEG0
別の時空間と重ね合わせが起きているせいじゃないか?
どうも間違えていると言う認識を持ってなさそうだし
2022/12/07(水) 23:42:34.19ID:18d7hgTv0
pythonから初めた人が、一番ビックリするのはどの言語だろう。
異質というか書き方、考え方がまったく異なるのは
2022/12/07(水) 23:47:25.14ID:cTs8jKu40
一般的なのはALGOL系言語ばかりだから
その範囲で見るかどうか
2022/12/07(水) 23:54:09.00ID:zyT8atzW0
びっくりの方向性だよな
そんな原始的なのという驚きか、そんなに進歩してるのなのか
121デフォルトの名無しさん (ブーイモ MMba-yU1l)
垢版 |
2022/12/08(木) 00:31:24.99ID:QpDPt4dNM
Lisp、Prolog、Haskell
近いようで遠いRubyやJavaScriptも少し潜れば驚くかも
2022/12/08(木) 00:53:56.36ID:9104bOlZ0
sed

言語じゃないと言う説もある
2022/12/08(木) 04:16:29.48ID:xxMUZ71f0
FORTH&MIND系、APLが吃驚どっきりかと
2022/12/08(木) 04:57:00.65ID:wTGSW5Ddr
アセンプリ言語はさすがの俺でもチンプンカンプン
2022/12/08(木) 09:21:07.59ID:1SDiWL4a0
情報技術者のテスト範囲だぞ
126デフォルトの名無しさん (ワッチョイ 9630-RX5i)
垢版 |
2022/12/08(木) 09:33:08.99ID:448yHz6S0
>>117
意識はあるけど、初めて書き込むので
話題が変わるまで、様子を見ようと思って、、、

しばらくして、、いきなり違うIDで連投に近い形で2レス入って、、
またしばらく空く感じか、、、

よくあるパターンだったな
2022/12/08(木) 09:40:19.93ID:DDcWYWxw0
誰か>>126の言ってること翻訳して
2022/12/08(木) 11:02:14.98ID:1XQgTTzM0
>>102
ヤバいな。もう人間のコーダーいらん未来が見えてくる。
2022/12/08(木) 11:17:00.51ID:1SDiWL4a0
そんな未来は前から見えていたけど、予想よりも早く来た

技術の進歩は加速度的に進むことをいつも忘れていて、
この感じで行けば、でつい推測してしまって、もうできたのかと驚く
AIは特にそう
2022/12/08(木) 11:25:47.13ID:4UfRv5L5M
ChatGPT実際使ってみたら分かるけど
ニッチな要求にはまるで駄目
所詮は自然言語処理AIでしかないよ
そう考えたときに必要なくなるのはプログラマーではなく"文系"だということが分かる
2022/12/08(木) 12:10:52.68ID:1XQgTTzM0
>>130
自分の書いたコード貼って、評価してって言ったら
目的からやりたいこと、改善策までペラペラ解説してくれたぞ。
まだまだ伸び代があるよ。
2022/12/08(木) 12:28:42.93ID:5XymevYj0
>>131
さすが文系様、スレ違いを延々とご苦労様
2022/12/12(月) 12:10:56.90ID:oLi82JVG0
理系は論文書いて博士号取って
研究者として、
悠々自適の人生だからね。

たまにFラン理系のバカのクスがIT関連の
仕事してるそうだが
恥ずかしいから理系と言わないで欲しいよね。

IT関連の仕事は文系の仕事だから笑笑
2022/12/12(月) 14:10:00.13ID:G6HMqHLsM
馬鹿は黙れ
2022/12/12(月) 14:14:55.12ID:eOEB7iLN0
そういう国もあるだろうけど、日本では研究職は目指さない
修士まで取ってメーカーに入る
就職活動とかしなくてもリストから選んで入れる
その後は、学部卒よりは少し高い給料からスタートする普通の会社員
2022/12/12(月) 14:37:58.23ID:RJtkOsuD0
日本で研究者やろうとすると悠々自適にはなれない
そうありたい奴は海外に行くけど結局成果が必要になるから結局悠々自適からかけ離れていく
2022/12/12(月) 15:21:57.13ID:tgEgCWEL0
プログラミングとかやりたい人は
自分の書いたコードで世界を変えたかったり
ビジネスたちあげてバリバリ稼いだり
したい人達だと思ってたから
かなりショックだわ
2022/12/12(月) 15:48:17.78ID:eOEB7iLN0
ただの道具だよ
じどうしゃとか運転する人は世界中を駆け回ると思ってた的な
139デフォルトの名無しさん (ブーイモ MMff-jxuj)
垢版 |
2022/12/12(月) 17:43:09.27ID:44htA5bGM
仕事がなくなるのは、理系文系というより、事象を抽象化してモデリングする能力のない人という気がするけどな。
適切な抽象化は現実世界の理解なしには成り立たないから、現実世界にエージェントを持たないChatGPTではなかなか出来ないことだと思う。
もしできるようになったらそれこそシンギュラリティだと思う。
2022/12/12(月) 18:03:28.13ID:eOEB7iLN0
この作業はマニュアル書けば他の人に依頼できるな
と思えるような仕事はみんなAIでもできる

日本の雇用はわざわざ高度な能力が要求される仕事を減らして、
誰でもできるタスクにブレイクダウンしてしまったので、今後一気に空洞化する
2022/12/12(月) 18:18:41.45ID:BWUj5Mhq0
仕事がなければ、作れば良いのよ(byお役所)
2022/12/12(月) 20:34:25.29ID:tgEgCWEL0
>>141
お役所は、はんこ文化とかで
自分の職だけは守り抜きそう
2022/12/12(月) 20:57:49.46ID:OzGBr6Gb0
>>141
実は仕事を作り出す仕事ってAIが苦手とするところでね
144デフォルトの名無しさん (ワッチョイ 7f30-u86g)
垢版 |
2022/12/12(月) 23:48:12.51ID:bEKuFd6N0
DeepMindが開発したAIの「AlphaCode」がプログラミングコンテストで「平均」評価を獲得
gigazine.net/news/20221212-competition-level-code-generation-alphacode/
2022/12/13(火) 08:39:04.79ID:iw6m1jKz0
AIに囲碁ができると驚いていた時代が既にのどかだな
2022/12/13(火) 09:49:13.62ID:f4PSgE9xa
一番やばいのは単純コーダーよりもむしろ、自分ではプロダクト作れない自称AIエンジニアやデータサイエンティストの類だと思うけどね
ある意味一番汎用AIの影響を直接受けるわけだし、もともとアウトプットの品質に直接的に責任を持たずにプロダクトサイドに丸投げだから問題なくAIで代替できてしまう
コンサルできない奴は早晩詰むよ
2022/12/13(火) 10:18:46.30ID:iw6m1jKz0
そうか?
単純に下から順番にAIに置き換わっていくと思うけど

修行が必要な仕事が機械化されていく
修行でそれぞれが同じテクニックやノウハウを体に叩き込むプロセスが不要になる
2022/12/13(火) 12:17:44.07ID:IaV/5b1zd
直近でヤバいのがテスターとかだと思うわ
未だにexcelで工程表書いてるSierがやってるやつ
149デフォルトの名無しさん (ワッチョイ 672c-NPZy)
垢版 |
2022/12/13(火) 12:18:39.32ID:dwUU8HKp0
l = ['x', 1, 2, 3, 'x', 4, 5, 'x']

ll = [[1, 2, 3], [4, 5], []]
みたいに、区切り文字間でリスト分割ってどうやったらいいですか?
2022/12/13(火) 12:28:47.82ID:U6ceeI5E0
more_itertools.split_at
とか?ほかでも書けそうだけどmore_itertools推しなので
2022/12/13(火) 13:25:44.81ID:8z83YMJG0
人間はデータ集め
0から1を作り出す作業でも
蓄積されたデータがあれば機械学習でも出来るようになる
人間はやってることをデータ化して蓄積するのが仕事
2022/12/13(火) 15:02:54.27ID:TTYL+bZwM
Truman 乙
2022/12/13(火) 15:20:08.68ID:iw6m1jKz0
>>149
最後に[]付くなら先頭にも付かないと
[]は勝手に削除してくれる方が嬉しい
154デフォルトの名無しさん (JP 0Hdb-NPZy)
垢版 |
2022/12/13(火) 17:32:35.97ID:nQGEQQWFH
>>150
あら~

>>153
すいません書きミス
[[], [***], [***], []]で合ってます

ちな最終的にほしいのは
[[***], [***]]だけです
区切り文字区間かつ有要素リストです
values =[]
temp = []
for i in l:
でゴリゴリは書けます
155デフォルトの名無しさん (ワッチョイ 7f33-3TNT)
垢版 |
2022/12/13(火) 19:36:48.06ID:ixSZ5WuR0
l = ['x',1,2,3,'x',4,5,'x']
ll = ''.join(map(str, l))
ll = ll.split('x')
ll = list(filter(None, ll))
156デフォルトの名無しさん (ワッチョイ 7f33-3TNT)
垢版 |
2022/12/13(火) 19:38:28.29ID:ixSZ5WuR0
l = ['x',1,2,3,'x',4,5,'x']
ll = ''.join(map(str, l))
ll = ll.split('x')
ll = [x for x in ll if x]
157デフォルトの名無しさん (ワッチョイ 2797-jxuj)
垢版 |
2022/12/13(火) 20:01:21.70ID:GoEkhVMn0
itertoolsにありそうだなと思ったらやっぱりあったよ

https://stackoverflow.com/a/15358422
2022/12/13(火) 20:06:27.54ID:iw6m1jKz0
ずっと前に似たような話題があったな
splitのlist版が欲しいという話
結局、numpyにそんな機能があったけど、itertoolsにあったのか
159デフォルトの名無しさん (ワッチョイ 877d-NPZy)
垢版 |
2022/12/13(火) 21:14:51.23ID:9xNtAiBx0
itertools.groupby
more_itertools.split_at
じいおぼえた
2022/12/13(火) 21:38:31.41ID:iw6m1jKz0
理解するのに結構かかった
groupbyで書けるというのはかなりトリッキーでないかい
161デフォルトの名無しさん (ブーイモ MM8f-jxuj)
垢版 |
2022/12/13(火) 22:43:21.73ID:OZR75EB8M
>>160
トリッキーと思うなら愚直な方法でいいんじゃないかな。
バカにしてるわけではなく、どこまでがリーダブルと思うかっていう個人の線引きの問題かなと思うから
でも、標準ライブラリに〇〇型限定ならあるのに、というものは大体itertoolsとかmore_itertoolsとかtoolzにある印象
162デフォルトの名無しさん (ワッチョイ 877d-NPZy)
垢版 |
2022/12/13(火) 23:21:41.02ID:9xNtAiBx0
区間抽出だからグルーピングで実現すると直感的ではないわね
llist = [list(y) for x, y in itertools.groupby(_list, lambda x: x == 'x')]

llist = list(more_itertools.split_at(_list, lambda x: x == 'x'))
よい
2022/12/14(水) 01:32:07.45ID:kqHjkPOA0
みんなのPythonの参考プログラムで、作者の趣味を押し付けることの危険性を再認識した
キメぇとかそういうのもあるがそれ以上に

長年好きだった職場の女の子に振り向いてもらえないまま知らん奴と結婚されたのと、ももクロメンバーの結婚が重なるとかさ(´;ω;`)
164デフォルトの名無しさん (ワッチョイ 672c-NPZy)
垢版 |
2022/12/14(水) 12:17:16.42ID:4cdDqMfv0
コード探せなかったんだけど
numpy.isnan()てどうやってnan判定しとるの?
というか(nan == nan) is False ってコンピウター的にはどういう実装?なん? nan?
2022/12/14(水) 15:25:15.40ID:ehQRDkpX0
>>164
nanにもいろいろあるからなのかな
ちゃんと読める人がいたら僕も教えてもらいたい

https://ja.m.wikipedia.org/wiki/IEEE_754
> NaNにも符号や仮数があるが、分析以外の目的では使えない。fraction の先頭ビットで 「signaling NaN」と「quiet NaN」を区別する。
> NaNと無限大はexponentフィールドが全て1である。
2022/12/14(水) 17:32:49.83ID:TSZjSIoj
ある価格範囲でpriceとsizeが(d=0.25)ずつ変化します
それぞれの数値を計算したいのですが
こんなにコードが長くなってしまいました・・
https://ideone.com/c2v5Zn
・価格priceが上がればサイズsizeがは下がる
・各価格のsizeの合計はsize=10を超えない
と言った感じです
もうちょっとすっきり書けないでしょうか
2022/12/14(水) 17:35:23.66ID:TSZjSIoj
訂正
>・価格priceが上がればサイズsizeがは下がる

・価格が上がれば、サイズも上がる
でした
168デフォルトの名無しさん (ワッチョイ 672c-NPZy)
垢版 |
2022/12/15(木) 11:37:30.33ID:K5mZtPm60
l = [(0, 1), (1, 2),,,]
l1, l2 = [x, y for x, y in l]

みたいなことがやりたいです。どうにかなりませんか
配列がじゅうぶん長いときに
l1 = [x for x, y in l]
l2 = [y for x, y in l]
より高速だとうれしいです
2022/12/15(木) 11:47:31.87ID:h3HR2no+0
>>168
速いかどうかはともかく、Pythonなら
l1, l2 = zip(*l)
が定番じゃないかな
170デフォルトの名無しさん (JP 0Hbf-NPZy)
垢版 |
2022/12/15(木) 12:00:38.16ID:c5NlDjZDH
そうだった
お恥ずかし~
171デフォルトの名無しさん (ワッチョイ bf1d-LVN3)
垢版 |
2022/12/15(木) 12:41:36.31ID:gJFaHKKS0
1,東京,abc
2,名古屋,def
3,大阪,ghi
上記csvファイルを読み込んで、レコード毎に変数no,data1,data2に読み込むにはどうすれば良いでしょうか?
2022/12/15(木) 13:04:48.59ID:OpF21df80
>>171
何がしたいのかわからんけど、その系はpandasを使うのがオススメ。
173デフォルトの名無しさん (ワッチョイ df07-5+d1)
垢版 |
2022/12/15(木) 13:08:07.43ID:itdlyzVP0
>>171
import csv

with open("a.csv") as csvfile:
    csvreader = csv.reader(csvfile)
    [no, data1, data2] = zip(*csvreader)
    print(no, data1, data2, sep="\n")

# ('1', '2', '3')
# ('東京', '名古屋', '大阪')
# ('abc', 'def', 'ghi')
2022/12/15(木) 13:17:17.28ID:EjBP7v2j
>>171
import pandas as pd
df=pd.DataFrame({
"ctiy":["東京","名古屋","大阪"],
"tag":["abc","def","ghi"]
})
df.to_csv("sample.csv")

import pandas as pd
df=pd.read_csv("sample.csv",index_col=0)
df.reset_index(inplace= True)
df=df.rename(columns={"index":"no","ctiy":"data1","tag":"data2"})
df
2022/12/15(木) 13:39:37.94ID:EjBP7v2j
元のcsvが文字通り>>171
,,
1,東京,abc
2,名古屋,def
3,大阪,ghi

なら
import pandas as pd
df=pd.read_csv("sample.csv")
df.columns=["no","data1","data2"]
だけ
2022/12/15(木) 13:42:19.50ID:+QphYrCZ0
pandasのコードのサンプルってデータの定義部分も書いてあったりするけど、
実際にはファイルからしか読まないんだよな
177デフォルトの名無しさん (ワッチョイ 7f33-3TNT)
垢版 |
2022/12/15(木) 13:44:08.19ID:jZ5UYKI00
>>173
no, data1, data2 = [row for row in zip(*csvreader)]
2022/12/15(木) 13:54:32.52
ファイルから読み込もうがデータを受信しようが
実際にはそのまま使うことなんてほぼ無いからな
扱いやすいデータ構造に変形して管理した方が良い
179デフォルトの名無しさん (ワッチョイ df07-5+d1)
垢版 |
2022/12/15(木) 14:05:26.43ID:itdlyzVP0
>>177
ん? ああ、左辺を [] で囲む必要ないんだ
その内包表記は何のため?
180デフォルトの名無しさん (ブーイモ MM8f-6sMM)
垢版 |
2022/12/15(木) 19:33:47.06ID:WOq9vVvEM
>>177
スマホでなんで確認しないで書き込んでごめんだけど、
内包表記のところは[*zip(csvreader)]でいい気がする(リストに変換できれば終わりかなと)
181デフォルトの名無しさん (ワッチョイ bf1d-LVN3)
垢版 |
2022/12/15(木) 20:37:08.25ID:gJFaHKKS0
171です。
>>172,173,174,175,176,178
皆様ありがとうございます。大変助かりました。
関連本何冊か読んだけどファイルから変数に代入する方法が分からず悶絶してました。
2022/12/15(木) 20:58:03.02ID:fJwxlZ0H0
list()も不要でzipから直接受けられる
じゃないと173が結果も書いてるのに未確認で貼ったことになる
2022/12/16(金) 11:14:23.82ID:3VZ9c5Obr
機器AとBでpythonを使った通信する場合
socket通信以外で高速にやりとりする方法ってあります?
2022/12/16(金) 11:15:53.31ID:piGGDlWY0
スピード優先ならUDPでどぞ
2022/12/16(金) 11:38:42.83ID:3VZ9c5Obr
なるほどsocketのUDPでやれば良いのね
ありがとう
186デフォルトの名無しさん (ワッチョイ dfad-+vMe)
垢版 |
2022/12/16(金) 16:03:41.42ID:rm4TpDjP0
30代のPythonクソチョンは
とにかくクズで強姦魔の犯罪者!

半島系帰化人は絶対に職場に入れないように
両親と祖父祖母の戸籍謄本を
提出させましょう!
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況