このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。
エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで
前スレ
くだすれPython(超初心者用) その36
http://mevius.2ch.net/test/read.cgi/tech/1514805522/
探検
くだすれPython(超初心者用) その37
■ このスレッドは過去ログ倉庫に格納されています
2018/03/17(土) 16:32:25.91ID:S1lkLDnv
203デフォルトの名無しさん
2018/04/07(土) 13:00:52.26ID:BRhgC8GS Brython
204デフォルトの名無しさん
2018/04/07(土) 14:26:32.33ID:z2/bO+GF >>188
「めんどうなことはpythonにさせよう」が面白かった。
「めんどうなことはpythonにさせよう」が面白かった。
205デフォルトの名無しさん
2018/04/07(土) 14:35:20.07ID:nRtWZzWw >>202
リアルタイムで更新したいならフロントエンドにreactを使え
リアルタイムで更新したいならフロントエンドにreactを使え
206遊園地
2018/04/07(土) 15:07:01.03ID:77S40Xyy >>197
#スペース区切りの数字を受け取り 3回
#l=[list(map(int,input().split())) for _ in range(3)]
#完成するデータ
l=[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
#横の合計
[print(sum(i)) for i in l]
#改行
print()
#縦の合計
[print(sum(i)) for i in list(zip(*l))]
#スペース区切りの数字を受け取り 3回
#l=[list(map(int,input().split())) for _ in range(3)]
#完成するデータ
l=[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
#横の合計
[print(sum(i)) for i in l]
#改行
print()
#縦の合計
[print(sum(i)) for i in list(zip(*l))]
207デフォルトの名無しさん
2018/04/07(土) 15:17:10.46ID:2Xz4c+5M こんくらいブラウザでやれば?
`
1 2 3
4 5 6
7 8 9
`
.trim().split`\n`
.map(row => row.split` `.map(Number).reduce((a, b) => a + b))
.forEach(rowSum => console.log(rowSum));
`
1 2 3
4 5 6
7 8 9
`
.trim().split`\n`
.map(row => row.split` `.map(Number).reduce((a, b) => a + b))
.forEach(rowSum => console.log(rowSum));
208デフォルトの名無しさん
2018/04/07(土) 17:08:57.70ID:p0Pua3Pc javaみたいな気持ち悪さ
209デフォルトの名無しさん
2018/04/07(土) 17:27:49.50ID:7ZRXk+Y5 なんで最近のプログラミング界ではforが迫害されてmapやreduceがもてはやされてるの?
初心者には分かりにくいと思うんだが。
初心者には分かりにくいと思うんだが。
210デフォルトの名無しさん
2018/04/07(土) 17:49:01.49ID:4dLkJWTk 初心者のことなど知らん
211デフォルトの名無しさん
2018/04/07(土) 20:07:36.83ID:VRHJEDN5 s.split(",")
s.replace(",","\t")
",".join(s)
joinだけ何故こんな文法に?
s.replace(",","\t")
",".join(s)
joinだけ何故こんな文法に?
212デフォルトの名無しさん
2018/04/07(土) 20:15:43.06ID:WHguHUHL213デフォルトの名無しさん
2018/04/07(土) 20:19:53.21ID:iO/NW/s5 >>211
join を文字列のメソッドにしたかったから
join を文字列のメソッドにしたかったから
214デフォルトの名無しさん
2018/04/07(土) 20:26:18.12ID:Iu5gYSvH Python の join() が文字列型のメソッドである理由
https://www.lifewithpython.com/2017/07/why-python-join-is-string-method.html
https://www.lifewithpython.com/2017/07/why-python-join-is-string-method.html
215デフォルトの名無しさん
2018/04/07(土) 22:15:55.69ID:u6SiCNsb >>210
仕事でソフト開発している人が、初心者のために分かりやすいコーディングをしているとは思えないよな。
仕事でソフト開発している人が、初心者のために分かりやすいコーディングをしているとは思えないよな。
217デフォルトの名無しさん
2018/04/08(日) 00:14:01.39ID:j+FIppRr >>202
このスレのレベルを超えた質問で場違いな感じの質問だな
このスレのレベルを超えた質問で場違いな感じの質問だな
218デフォルトの名無しさん
2018/04/08(日) 01:12:18.12ID:s6V+xdvY >>215
逆だよ。仕事でソフト開発している人が、難読コードを書いちゃいかんだろ。
逆だよ。仕事でソフト開発している人が、難読コードを書いちゃいかんだろ。
219デフォルトの名無しさん
2018/04/08(日) 01:18:01.50ID:kOs0IpX+220デフォルトの名無しさん
2018/04/08(日) 01:33:34.80ID:ikNNlzZg >>212
>>207よりこっちのほうが分かりやすいと?そうかなぁ?
昔ながらのfor文に慣れてるからそう思うだけで、初心者に聞いてみたらむしろ逆なんじゃない?知らんけど
何より識別子が増えて名付けが辛い。
const mat = `
1 2 3
4 5 6
7 8 9
`.trim();
for (const row of mat.split`\n`) {
const rowAry = row.split` `;
let rowSum = 0;
for (const cel of rowAry) {
rowSum += Number(cel);
}
console.log(rowSum);
}
>>207よりこっちのほうが分かりやすいと?そうかなぁ?
昔ながらのfor文に慣れてるからそう思うだけで、初心者に聞いてみたらむしろ逆なんじゃない?知らんけど
何より識別子が増えて名付けが辛い。
const mat = `
1 2 3
4 5 6
7 8 9
`.trim();
for (const row of mat.split`\n`) {
const rowAry = row.split` `;
let rowSum = 0;
for (const cel of rowAry) {
rowSum += Number(cel);
}
console.log(rowSum);
}
221デフォルトの名無しさん
2018/04/08(日) 02:22:57.13ID:jNVGKdq/ joinは文字列の連結がウリなのに、引数を一個しか指定できないのが謎過ぎる
",".join("A","B","C")ってやりたい時に、実際はあらかじめ"A","B","C"をリストに入れるか
+で連結しとかんといかんって本末転倒だろ
",".join("A","B","C")ってやりたい時に、実際はあらかじめ"A","B","C"をリストに入れるか
+で連結しとかんといかんって本末転倒だろ
222デフォルトの名無しさん
2018/04/08(日) 02:36:06.55ID:6R1G24Uu223デフォルトの名無しさん
2018/04/08(日) 06:58:14.21ID:gxaJAEYd >>210
ここ超初心者のスレ。
ここ超初心者のスレ。
224デフォルトの名無しさん
2018/04/08(日) 10:08:27.26ID:kOs0IpX+225デフォルトの名無しさん
2018/04/08(日) 11:41:56.18ID:YK+KPtHu >>209
初心者はどっちから教えても一緒だと思う
初心者はどっちから教えても一緒だと思う
226デフォルトの名無しさん
2018/04/08(日) 11:55:02.04ID:9/UswNDz227デフォルトの名無しさん
2018/04/08(日) 16:29:56.48ID:MFf7xIr6 こんにちは
タイムカードを処理するアプリを作りたいと思っていて、月の勤務記録を一括で読み込んで実労働時間を出そうと思ってます。
1行毎(1日毎)に実労働時間を出して最後にそれを全て足そうと思っているのですが、行ごとの処理の仕方がわからないんです…
ご回答よろしくお願いします。
タイムカードを処理するアプリを作りたいと思っていて、月の勤務記録を一括で読み込んで実労働時間を出そうと思ってます。
1行毎(1日毎)に実労働時間を出して最後にそれを全て足そうと思っているのですが、行ごとの処理の仕方がわからないんです…
ご回答よろしくお願いします。
228デフォルトの名無しさん
2018/04/08(日) 16:43:00.39ID:GoOLzpCW 一行分の入力データと
一行分の入力データから得たい出力データを記載しろ
一行分の入力データから得たい出力データを記載しろ
229デフォルトの名無しさん
2018/04/08(日) 16:48:16.19ID:MFf7xIr6 1行分の入力 2017/03/01 12:00-15:00 16:00-24:00
出力 11
こんな感じです
そもそもsys.stdin.readlines()で処理するのが正しいんですかね
出力 11
こんな感じです
そもそもsys.stdin.readlines()で処理するのが正しいんですかね
230デフォルトの名無しさん
2018/04/08(日) 16:59:45.98ID:nkM5b3tX pandas.read_from_hogehoge
231デフォルトの名無しさん
2018/04/08(日) 17:46:41.40ID:6sp2I/Ld >>> import datetime
>>> import pandas
>>> from io import StringIO
>>> mindif = lambda s: (lambda x: td(x[1])-td(x[0]))(s.split('-'))
>>> td = lambda s: (lambda x: datetime.timedelta(hours=x[0], minutes=x[1]))(list(map(int, s.split(':'))))
>>> f = StringIO('''\
2017/03/01 12:00-15:00 16:00-24:00
2017/03/01 12:00-15:00 16:00-24:00
2017/03/01 12:00-15:00 16:00-24:00
2017/03/01 12:00-15:00 16:00-24:00
''')
>>> a = pandas.read_table(f, header=None, sep=' ')
>>> a[3] = a[1].map(mindif)
>>> a[4] = a[2].map(mindif)
>>> a
0 1 2 3 4
0 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00
1 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00
2 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00
3 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00
>>> import pandas
>>> from io import StringIO
>>> mindif = lambda s: (lambda x: td(x[1])-td(x[0]))(s.split('-'))
>>> td = lambda s: (lambda x: datetime.timedelta(hours=x[0], minutes=x[1]))(list(map(int, s.split(':'))))
>>> f = StringIO('''\
2017/03/01 12:00-15:00 16:00-24:00
2017/03/01 12:00-15:00 16:00-24:00
2017/03/01 12:00-15:00 16:00-24:00
2017/03/01 12:00-15:00 16:00-24:00
''')
>>> a = pandas.read_table(f, header=None, sep=' ')
>>> a[3] = a[1].map(mindif)
>>> a[4] = a[2].map(mindif)
>>> a
0 1 2 3 4
0 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00
1 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00
2 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00
3 2017/03/01 12:00-15:00 16:00-24:00 03:00:00 08:00:00
232デフォルトの名無しさん
2018/04/08(日) 17:50:59.38ID:6sp2I/Ld >>> a[3] = a[1].map(mindif)
>>> a[4] = a[2].map(mindif)
この2行は
>>> a[3] = a[1].map(mindif) + a[2].map(mindif)
だけで良かった 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
>>> a[4] = a[2].map(mindif)
この2行は
>>> a[3] = a[1].map(mindif) + a[2].map(mindif)
だけで良かった 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
233デフォルトの名無しさん
2018/04/08(日) 18:54:45.02ID:1mmlbc0v Ruby だと、時刻に、24時は無いけど。
23まで
午前中は、どう表記してる?
03:05, 3:05 のどっち?
23まで
午前中は、どう表記してる?
03:05, 3:05 のどっち?
234遊園地
2018/04/08(日) 20:12:56.50ID:gmVtfD5c235遊園地
2018/04/08(日) 20:22:54.67ID:gmVtfD5c なんか、知らんけど腕が落ちてる。
236デフォルトの名無しさん
2018/04/08(日) 20:26:08.17ID:3hKhfzCU 拾っとけ拾っとけ1割もらえるかもよ
237遊園地
2018/04/08(日) 20:30:56.58ID:gmVtfD5c そっちじゃねえよww
238デフォルトの名無しさん
2018/04/08(日) 21:23:41.29ID:MFf7xIr6 >>233
午前中は5:00まで29:00の仕様です
午前中は5:00まで29:00の仕様です
239デフォルトの名無しさん
2018/04/08(日) 21:24:04.77ID:MFf7xIr6 助かります。参考に書いてみます
240デフォルトの名無しさん
2018/04/08(日) 21:46:24.45ID:5trngRbI >>238
5時がタイムカード上では29時なんか
夜23時から早朝の5時勤務の場合
タイムカードは23:00-29:00
夜23時から早朝の6:00時勤務の場合
タイムカードは23:00-06:00
夜1時から早朝の5時勤務の場合
タイムカードは25:00-29:00
とかになるのか
5時がタイムカード上では29時なんか
夜23時から早朝の5時勤務の場合
タイムカードは23:00-29:00
夜23時から早朝の6:00時勤務の場合
タイムカードは23:00-06:00
夜1時から早朝の5時勤務の場合
タイムカードは25:00-29:00
とかになるのか
241デフォルトの名無しさん
2018/04/08(日) 22:02:44.17ID:MFf7xIr6242デフォルトの名無しさん
2018/04/08(日) 22:54:58.64ID:eu3b+r+J >>238
それって残業代どうなるの?深夜勤務、8時間超えたら、〇時間超えたら何割増しってあるんでしょ?
それって残業代どうなるの?深夜勤務、8時間超えたら、〇時間超えたら何割増しってあるんでしょ?
243遊園地
2018/04/08(日) 23:52:48.14ID:gmVtfD5c 規模によるがw
数百万から数千万の未払金が発生するなww
ただの問題サイトのテストケースだろうけどなw
数百万から数千万の未払金が発生するなww
ただの問題サイトのテストケースだろうけどなw
244デフォルトの名無しさん
2018/04/09(月) 04:01:32.98ID:WaD3v69G >>242
そこからは自力で書いてみようと思ってます
そこからは自力で書いてみようと思ってます
245デフォルトの名無しさん
2018/04/09(月) 10:27:28.30ID:l0CeQllx >>229
医師とかだとこういう勤務形態になるのかな
医師とかだとこういう勤務形態になるのかな
246遊園地
2018/04/09(月) 10:40:52.05ID:Ptdpw/63 朝4時に起きとか、怖過ぎ。
247デフォルトの名無しさん
2018/04/09(月) 10:59:02.77ID:s1r7cemC 月200時間以上ざんぎょーしてた頃がなつかしーわー
3れんきん(中日は24時間勤務)とかふつうにあった
書類上は
5分仕事 15分休憩
の繰り返しになってた
3れんきん(中日は24時間勤務)とかふつうにあった
書類上は
5分仕事 15分休憩
の繰り返しになってた
248遊園地
2018/04/09(月) 14:05:06.99ID:Ptdpw/63 仕様が決定して有るなら、作業みたいなモノだろうに。
そんなに仕事を抱え込めるのかな?
管理も兼任してたら、オーバーフローでオーバーロードですな。ww
そんなに仕事を抱え込めるのかな?
管理も兼任してたら、オーバーフローでオーバーロードですな。ww
249デフォルトの名無しさん
2018/04/09(月) 14:23:31.09ID:GdkyYm9A rubyスレにマルチするのやめれ
250デフォルトの名無しさん
2018/04/09(月) 15:40:06.66ID:WaD3v69G >>234
これ曜日って出せますか?
これ曜日って出せますか?
251デフォルトの名無しさん
2018/04/09(月) 16:03:42.19ID:M/BmQ9Z1 Ruby スレに書き込んだのは、python スレの書き込みとは別人。
ID も異なるはず
python スレの書き込みを見て、
Ruby ではどうプログラミングするべきか、考えてみたが難しかった
ID も異なるはず
python スレの書き込みを見て、
Ruby ではどうプログラミングするべきか、考えてみたが難しかった
252デフォルトの名無しさん
2018/04/09(月) 20:54:36.31ID:dNOi8uH1 pythonで書けてrubyで難しいなんてことがあるのか。
ちょっと意外
ちょっと意外
253遊園地
2018/04/09(月) 21:07:06.94ID:Ptdpw/63254デフォルトの名無しさん
2018/04/09(月) 21:37:50.56ID:0kSx2Pnj >調べても2,3分で実装まで5分掛からないんだから、頑張ろうな。
"超"初心者=>調べることができない、調べようとしない、頑張ることができない人
超初心者に不可能なことを要求するなよ。初心者ならこれらのことは出来るんだが
"超"初心者=>調べることができない、調べようとしない、頑張ることができない人
超初心者に不可能なことを要求するなよ。初心者ならこれらのことは出来るんだが
257デフォルトの名無しさん
2018/04/10(火) 00:18:50.47ID:RB2jjZ4g258遊園地
2018/04/10(火) 09:44:44.25ID:QiXBaC3n 検索の仕方は
言語 項目
python 日付
python 曜日
とかで、hitする。と思う。
言語 項目
python 日付
python 曜日
とかで、hitする。と思う。
259遊園地
2018/04/10(火) 09:48:10.16ID:QiXBaC3n 素直に行くなら、
公式Documentを落として、
英語で、ファイル内検索
かな。
公式Documentを落として、
英語で、ファイル内検索
かな。
260遊園地
2018/04/10(火) 11:25:34.63ID:QiXBaC3n261デフォルトの名無しさん
2018/04/10(火) 20:30:36.44ID:CXD6eMLO for index, row in mr.iterrows():
a = row.ix[0]
a.replace(u"月","a")
月をaに置換したいんだけどうまくいかない・・・どうすればいい?
a = row.ix[0]
a.replace(u"月","a")
月をaに置換したいんだけどうまくいかない・・・どうすればいい?
262デフォルトの名無しさん
2018/04/10(火) 21:31:07.93ID:6CkCb20Q 'nichi月🔥水moku金do'.replace(/月/gu, 'a');
263デフォルトの名無しさん
2018/04/10(火) 22:15:50.26ID:tEeQ8k7E >261
panda は使ったことないのでよくわからないけれど、
str.replace(s, t) について言うと
文字列はイミューダブルだから、replaceでstrが書き換わるわけではない。
書き換わった値が返ってくるので、それを変数に代入することが必要。
つまり、a = a.replace(s, t) のようにする。
さらに、aに再代入しても、
iter.ix[0]の中身は変わらない。
なので、
iter.ix[0]=iter.ix[0].replace(s, t)
のようにする必要があるのだと思う。
外してたらゴメン
panda は使ったことないのでよくわからないけれど、
str.replace(s, t) について言うと
文字列はイミューダブルだから、replaceでstrが書き換わるわけではない。
書き換わった値が返ってくるので、それを変数に代入することが必要。
つまり、a = a.replace(s, t) のようにする。
さらに、aに再代入しても、
iter.ix[0]の中身は変わらない。
なので、
iter.ix[0]=iter.ix[0].replace(s, t)
のようにする必要があるのだと思う。
外してたらゴメン
264デフォルトの名無しさん
2018/04/10(火) 22:22:55.45ID:CXD6eMLO265デフォルトの名無しさん
2018/04/11(水) 00:45:52.55ID:5V3NvSPI rrrubyyy
266デフォルトの名無しさん
2018/04/11(水) 08:15:34.43ID:vlh3mMKJ Githubで公開されていたライブラリ?モジュール?を利用したプログラムを書いているのですが、
このライブラリの関数の中に、WebからJson形式で値を取得するものがあります。
これを実行するとコンソールにズラーっと結果がPrintされるのですが、
このPrintを無効にしてコンソール上に出力しないようにする事は出来るでしょうか?
デバッグ用のPrint等が流れて読めなくなってしまい、邪魔なので出さないようにしたいです。
よろしくお願い致します。
このライブラリの関数の中に、WebからJson形式で値を取得するものがあります。
これを実行するとコンソールにズラーっと結果がPrintされるのですが、
このPrintを無効にしてコンソール上に出力しないようにする事は出来るでしょうか?
デバッグ用のPrint等が流れて読めなくなってしまい、邪魔なので出さないようにしたいです。
よろしくお願い致します。
267デフォルトの名無しさん
2018/04/11(水) 09:01:53.43ID:qa2FEnRq ライブラリなら普通はlogging使ってるはずだから設定で消せる
もし直接printしてるようならそんなものは今すぐ投げ捨てて他を探せ
そんな低品質なゴミを使ってると後々取り返しのつかないトラブルの原因になりかねない
もし直接printしてるようならそんなものは今すぐ投げ捨てて他を探せ
そんな低品質なゴミを使ってると後々取り返しのつかないトラブルの原因になりかねない
268デフォルトの名無しさん
2018/04/11(水) 09:35:50.44ID:cUARpOdH >>266
頭が良い奴なら、ソース弄らないで動的に関数内のprint部分だけコメントになるようにするとかできるんだろうが(デコレータのような使い方で)。
でも、そんな奴は5chのpythonスレにはいないだろう
頭が良い奴なら、ソース弄らないで動的に関数内のprint部分だけコメントになるようにするとかできるんだろうが(デコレータのような使い方で)。
でも、そんな奴は5chのpythonスレにはいないだろう
269遊園地
2018/04/11(水) 10:02:21.51ID:y+NDlg77 無効にする割合は、40ぐらいに設定して置いた方が無難
270遊園地
2018/04/11(水) 10:13:12.84ID:y+NDlg77 優秀な奴が、労力をかける場所を間違わないと思うけどな。
ほんの1つのライブラリなんだから、他を探すのが正解だと思うぞい!ww
ほんの1つのライブラリなんだから、他を探すのが正解だと思うぞい!ww
271デフォルトの名無しさん
2018/04/11(水) 12:37:06.54ID:bG1z7LTF マジレスするとstdoutのトラップで桶
272デフォルトの名無しさん
2018/04/11(水) 14:41:24.70ID:nGNQyhwo 意地悪な憶測だがライセンスも読んでないに違いない
273デフォルトの名無しさん
2018/04/11(水) 23:09:57.05ID:QNR3RY4l まじめにライセンスを読むのはいかがわしい事を考えてる奴だけ説
274デフォルトの名無しさん
2018/04/11(水) 23:13:13.16ID:DormuVYu ぐう正論
275デフォルトの名無しさん
2018/04/11(水) 23:54:01.75ID:VAa2HaB9 @GPS取得
↓
Aネットにあるjsonを取得
↓
BGPS内容・json内容を0.5秒おきに出力
↑の処理をするプログラムを組んでいます。
@はすぐ処理が終わるので問題ありませんが、Aは使用環境が外でモバイル通信を使用しているためかAの処理だけで最大5秒かかることがあってBの処理が大幅に遅れてしまいます。
Aのみ裏で処理して、@とBをループさせたいのですが、いい方法ありますでしょうか?
↓
Aネットにあるjsonを取得
↓
BGPS内容・json内容を0.5秒おきに出力
↑の処理をするプログラムを組んでいます。
@はすぐ処理が終わるので問題ありませんが、Aは使用環境が外でモバイル通信を使用しているためかAの処理だけで最大5秒かかることがあってBの処理が大幅に遅れてしまいます。
Aのみ裏で処理して、@とBをループさせたいのですが、いい方法ありますでしょうか?
276275
2018/04/12(木) 00:05:44.68ID:qBx4xR6B 先ほどの書き方だとjsonを0.5秒以内に取得するということになってしまうので修正します。
@GPS取得(0.5秒ごとに処理)
↓
Aネットにあるjsonを取得(10秒ごとに処理)
↓
BGPS内容・json内容を出力(0.5秒ごとに処理)
10秒に1回以外は@とBのループなので問題ありませんが、↑の処理だと10秒に1回はAを処理するときに時間がかかってしまってBの処理が0.5秒で処理できなくなってしまうのが問題です。
@GPS取得(0.5秒ごとに処理)
↓
Aネットにあるjsonを取得(10秒ごとに処理)
↓
BGPS内容・json内容を出力(0.5秒ごとに処理)
10秒に1回以外は@とBのループなので問題ありませんが、↑の処理だと10秒に1回はAを処理するときに時間がかかってしまってBの処理が0.5秒で処理できなくなってしまうのが問題です。
277デフォルトの名無しさん
2018/04/12(木) 00:15:41.74ID:4IaDzy3O 2を実行するために1の結果が要らないならご自由に
278275
2018/04/12(木) 00:53:20.19ID:qBx4xR6B スレッドという処理があったのでこれを使えばいけそうでした
自己解決すみません。
自己解決すみません。
279デフォルトの名無しさん
2018/04/12(木) 00:58:33.43ID:3KpeTxH4 俺ならGPSロギングとJSON取得はそれぞれ全く別個に作って別プロセスで動かすわ
結果はタイムスタンプを使って後で結合すればいい
結果はタイムスタンプを使って後で結合すればいい
280デフォルトの名無しさん
2018/04/12(木) 01:08:15.09ID:iaId0hiD f = open("precictor_result.txt","a")
f.write(result," ",predict," ",data_test,"\n" )
f.close()
これだと、引数が多いとエラーが出る
,の代わりに+を使うと、数値として計算するようで、
TypeError: ufunc 'add' did not contain a loop with signature matching types dtype('<U21') dtype('<U21') dtype('<U21')
とエラーが出る
とりあえず、簡単に出力させて中身を確認したいがどのようするのがスマートだろうか?
f.write(result," ",predict," ",data_test,"\n" )
f.close()
これだと、引数が多いとエラーが出る
,の代わりに+を使うと、数値として計算するようで、
TypeError: ufunc 'add' did not contain a loop with signature matching types dtype('<U21') dtype('<U21') dtype('<U21')
とエラーが出る
とりあえず、簡単に出力させて中身を確認したいがどのようするのがスマートだろうか?
281デフォルトの名無しさん
2018/04/12(木) 01:20:58.84ID:ViqCrKfL 変数が何なのかは知らんが
>数値として計算する
なら文字列に変換すれば良いだろ
>数値として計算する
なら文字列に変換すれば良いだろ
282デフォルトの名無しさん
2018/04/12(木) 01:27:04.11ID:iaId0hiD >>281
レスありがとうございます
変数全てに対して文字列に変換するのが面倒で・・・
例えば、
print(result," ",predict," ",data_test,)
であれば問題なく出力されますので
ファイルに保存する場合ももっとスマートにできる方法があれば助かります
レスありがとうございます
変数全てに対して文字列に変換するのが面倒で・・・
例えば、
print(result," ",predict," ",data_test,)
であれば問題なく出力されますので
ファイルに保存する場合ももっとスマートにできる方法があれば助かります
283遊園地
2018/04/12(木) 01:37:46.68ID:tAnO53/m これで、良いのかな?
f = open('text.txt', 'r')
for i in f:
print (str(i))
f.close()
f = open('text.txt', 'r')
for i in f:
print (str(i))
f.close()
284遊園地
2018/04/12(木) 01:39:14.90ID:tAnO53/m 見たら分かると思うけど、
f.write( str(i) )
と言う構想
f.write( str(i) )
と言う構想
285デフォルトの名無しさん
2018/04/12(木) 02:29:34.74ID:iaId0hiD ありがとうございます。
f.write( str(result) + " " + str(predict) + " " + str(data_test) + "\n" )
でうまくいきました。ただ、大量の変数を出力する場合、
標準出力ではうまくいくわけですから、全て文字列にキャストするのはちょっと面倒と感じています。
例えば、
print(result," ",predict," ",data_test) #実際にはもっと多くの変数が並ぶ
こんな場合、これではエラーが出ますが、イメージとしては、
f.write( str((result," ",predict," ",data_test)) )
のような物でもあればもっと気軽にファイル出力できるような感じです
f.write( str(result) + " " + str(predict) + " " + str(data_test) + "\n" )
でうまくいきました。ただ、大量の変数を出力する場合、
標準出力ではうまくいくわけですから、全て文字列にキャストするのはちょっと面倒と感じています。
例えば、
print(result," ",predict," ",data_test) #実際にはもっと多くの変数が並ぶ
こんな場合、これではエラーが出ますが、イメージとしては、
f.write( str((result," ",predict," ",data_test)) )
のような物でもあればもっと気軽にファイル出力できるような感じです
286デフォルトの名無しさん
2018/04/12(木) 03:01:07.44ID:M9kW+xEA str = [result, predict, data_test]
for i in str
f.write()
これで動くっけ?
for i in str
f.write()
これで動くっけ?
287デフォルトの名無しさん
2018/04/12(木) 04:00:58.45ID:T93bDVFD >>275-279
スレッドは、同一プロセスだろ。
こういうのは、別のプロセスでよくある
数秒毎に書き込むプロセスAと、1秒毎に読み込むプロセスBがある
B は、ファイルをスタンプを見て、
新たに書き込まれた情報が無ければ、. を出力して、
新情報があれば、o を出力するみたいなやつ
制御・組み込み系で多い
...o....o...o.....o....o..
スレッドは、同一プロセスだろ。
こういうのは、別のプロセスでよくある
数秒毎に書き込むプロセスAと、1秒毎に読み込むプロセスBがある
B は、ファイルをスタンプを見て、
新たに書き込まれた情報が無ければ、. を出力して、
新情報があれば、o を出力するみたいなやつ
制御・組み込み系で多い
...o....o...o.....o....o..
288デフォルトの名無しさん
2018/04/12(木) 04:10:10.14ID:T93bDVFD name = 'John'
age = 20 + 3
print "名前は #{name}、年齢は #{age}歳"
Ruby では、テンプレート文字列って言うのかな?
文字列の中で、式を展開できる。
最終的に、変数が文字列型に変換される
Python には、こういう機能が無いのか?
age = 20 + 3
print "名前は #{name}、年齢は #{age}歳"
Ruby では、テンプレート文字列って言うのかな?
文字列の中で、式を展開できる。
最終的に、変数が文字列型に変換される
Python には、こういう機能が無いのか?
289デフォルトの名無しさん
2018/04/12(木) 04:49:22.42ID:t3ixnFe0 >>280
printは引数を強制的に文字列に変換するうえに
キーワードオプションで出力先を変更できるから
以下で通るはず。空白も改行も勝手に入る
詳しくはドキュメントの「Python標準ライブラリ-組み込み関数」を参照
print(result, predict, data_test, file=f)
printは引数を強制的に文字列に変換するうえに
キーワードオプションで出力先を変更できるから
以下で通るはず。空白も改行も勝手に入る
詳しくはドキュメントの「Python標準ライブラリ-組み込み関数」を参照
print(result, predict, data_test, file=f)
290デフォルトの名無しさん
2018/04/12(木) 06:25:29.02ID:t3ixnFe0 >>288
文字列中での式展開はPython3.6から実装された
3.6以前ではこの機能がなく、%記法やstr.formatメソッドを使う
%記法
print("名前は %s、年齢は %d" % (name, age))
str.formatメソッド
print("名前は {}、年齢は {}".format(name, age))
フォーマット済み文字列リテラル
print(f"名前は {name}、年齢は {age}")
文字列中での式展開はPython3.6から実装された
3.6以前ではこの機能がなく、%記法やstr.formatメソッドを使う
%記法
print("名前は %s、年齢は %d" % (name, age))
str.formatメソッド
print("名前は {}、年齢は {}".format(name, age))
フォーマット済み文字列リテラル
print(f"名前は {name}、年齢は {age}")
291遊園地
2018/04/12(木) 09:27:33.72ID:tAnO53/m292デフォルトの名無しさん
2018/04/12(木) 10:53:13.19ID:iaId0hiD >>291
Pythonを初めて2日目でデータ構造についても正直よく分かってないです
import pandas as pd
from sklearn.ensemble import RandomForestClassifier
from sklearn import cross_validation, metrics
from sklearn.externals import joblib
import warnings
warnings.filterwarnings("ignore")
mr = pd.read_table("test-data.txt",header=-1)
mr = mr[0:70]
clf = RandomForestClassifier()
clf = joblib.load('cars.pkl');
for row_index, row in mr.iterrows():
result = row.ix[0]
data_test = row.ix[1:]
predict = clf.predict(data_test)
f = open("test.txt","a")
print (result," ",predict," ",data_test )
f.write( str(result) + " " + str(predict) + " " + str(data_test) + "\n" )
# 標準出力を、ちょっとファイルに出力して中身を確認したいだけで全てキャスト(今は3つなので良いが10くらいになると面倒)するのは面倒なので上の行をもう少し簡素にしたい
f.close()
Pythonを初めて2日目でデータ構造についても正直よく分かってないです
import pandas as pd
from sklearn.ensemble import RandomForestClassifier
from sklearn import cross_validation, metrics
from sklearn.externals import joblib
import warnings
warnings.filterwarnings("ignore")
mr = pd.read_table("test-data.txt",header=-1)
mr = mr[0:70]
clf = RandomForestClassifier()
clf = joblib.load('cars.pkl');
for row_index, row in mr.iterrows():
result = row.ix[0]
data_test = row.ix[1:]
predict = clf.predict(data_test)
f = open("test.txt","a")
print (result," ",predict," ",data_test )
f.write( str(result) + " " + str(predict) + " " + str(data_test) + "\n" )
# 標準出力を、ちょっとファイルに出力して中身を確認したいだけで全てキャスト(今は3つなので良いが10くらいになると面倒)するのは面倒なので上の行をもう少し簡素にしたい
f.close()
293デフォルトの名無しさん
2018/04/12(木) 10:53:50.49ID:iaId0hiD294デフォルトの名無しさん
2018/04/12(木) 11:12:19.94ID:t3ixnFe0 >>293
これはprint関数の機能だからwriteでは使えないよ
こう変えるだけなんだけど、どうしてもwriteじゃなきゃいけないの?
f.write( str(result) + " " + str(predict) + " " + str(data_test) + "\n" )
↓
print(result, predict, data_test, file=f)
これはprint関数の機能だからwriteでは使えないよ
こう変えるだけなんだけど、どうしてもwriteじゃなきゃいけないの?
f.write( str(result) + " " + str(predict) + " " + str(data_test) + "\n" )
↓
print(result, predict, data_test, file=f)
295デフォルトの名無しさん
2018/04/12(木) 11:18:36.95ID:JyHXEe/D resultとかの各変数の中身が文字列じゃない気がする
296遊園地
2018/04/12(木) 11:38:42.18ID:tAnO53/m pandasは触った事ないから、協力できない。
差支えが無ければ、test-data.txtの中身(記述形式)を教えてくれ。
でたらめな数値や造語で良い。そうしたら、何か分かるかも。
差支えが無ければ、test-data.txtの中身(記述形式)を教えてくれ。
でたらめな数値や造語で良い。そうしたら、何か分かるかも。
297デフォルトの名無しさん
2018/04/12(木) 12:03:51.11ID:iaId0hiD >>294
出力されたデータをExcelでグラフにしたり検証したい時などとりあえずテキストデータにしたいのです
普段はperlを使っているのですがそれだとprintそのままにファイルハンドルを付けるだけで
標準でもテキストでも好きに出力できるので同じような使い方ができればと思っています
どちらも出力させて、画面で分かるものはそれでいいですし、
詳細な検討がしたい場合はファイルをExcelなどで開いて再検討する感じです
また、pythonやpandasに慣れて居らずその結果が不安で適宜Excelの結果と照合したいというのもあります
本当はperlでやりたいのですが機械学習について調べているとPythonのモジュールを使う物ばかりで・・・
>>296
生データそのままです
0 1 1 100 99 98 97 101
0 1 1 101 100 99 98 97
1 1 1 97 101 100 99 98
1 1 1 98 97 101 100 99
1 0 1 99 98 97 101 100
1 0 0 100 99 98 97 101
1 0 0 101 100 99 98 97
出力されたデータをExcelでグラフにしたり検証したい時などとりあえずテキストデータにしたいのです
普段はperlを使っているのですがそれだとprintそのままにファイルハンドルを付けるだけで
標準でもテキストでも好きに出力できるので同じような使い方ができればと思っています
どちらも出力させて、画面で分かるものはそれでいいですし、
詳細な検討がしたい場合はファイルをExcelなどで開いて再検討する感じです
また、pythonやpandasに慣れて居らずその結果が不安で適宜Excelの結果と照合したいというのもあります
本当はperlでやりたいのですが機械学習について調べているとPythonのモジュールを使う物ばかりで・・・
>>296
生データそのままです
0 1 1 100 99 98 97 101
0 1 1 101 100 99 98 97
1 1 1 97 101 100 99 98
1 1 1 98 97 101 100 99
1 0 1 99 98 97 101 100
1 0 0 100 99 98 97 101
1 0 0 101 100 99 98 97
298デフォルトの名無しさん
2018/04/12(木) 12:10:53.36ID:CLTBB0jT 画面に出力する(普通にprintする)プログラムを作って、
ファイルに保存したい場合には
foo.py > filename
という風に実行する、
というやり方はご存知ですか?
ファイルに保存したい場合には
foo.py > filename
という風に実行する、
というやり方はご存知ですか?
299デフォルトの名無しさん
2018/04/12(木) 12:16:50.63ID:rOwLVxdy てかパンダ使ってるならそっちで出力すれば?
300デフォルトの名無しさん
2018/04/12(木) 12:40:44.41ID:T93bDVFD in/out を、標準入出力にしておけば、パイプでファイルにつなげられる
スクリプトファイル < 入力ファイル > 出力ファイル
スクリプトファイル < 入力ファイル > 出力ファイル
301デフォルトの名無しさん
2018/04/12(木) 12:44:49.97ID:iaId0hiD■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 自民・麻生太郎 副総裁 石破政権の1年は「どよーん」 高市政権の発足で「何となく明るくなった」「世の中のことが決まり動いている」 [Hitzeschleier★]
- 東京都「都民の税金1.5兆円が国に奪われている」「全国に分配されている」に地方民ブチギレ [Hitzeschleier★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ [蚤の市★]
- 【27歳会社員】「自慰行為に使うために」コインランドリーの乾燥機から24歳女性の下着など計11点(時価8万2080円相当)盗んだ疑い [nita★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★3
- ジャップ「カントの純粋理性批判読むお!!!」⇒全員上巻で挫折 俺恥ずかしいよ…😭 [731544683]
- トランプ、G7に代わるcore 5を発表 [805596214]
- 麻生太郎が石破政権の1年を酷評「どよーんとして何も動かない感じだったな。それに引き換え高市政権は物事が動いている」 [597533159]
- 【速報】室井佑月、米山隆一との離婚を決意wwwwwwwwwwwwwwwwwwww [802034645]
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★4
