くだすれPython(超初心者用) その35 [無断転載禁止]©2ch.net

レス数が900を超えています。1000を超えると表示できなくなるよ。
1デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ a36e-zUMb [106.72.44.32])
垢版 |
2017/06/02(金) 22:49:01.56ID:DAT8M7/R0
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで

前スレ
くだすれPython(超初心者用) その34
http://echo.2ch.net/test/read.cgi/tech/1495971255/
VIPQ2_EXTDAT: default:vvvvvv:1000:512:----: EXT was configured
832デフォルトの名無しさん (エーイモ SE03-Ssgc [1.114.3.31])
垢版 |
2017/11/23(木) 20:15:51.01ID:+rOPaiRtE
hogeはテキストじゃないファイル
fp = open("hoge", "rb)
____print(fp.read())
これで\x00\x16こんな感じのよくわからない記号が出るんだけど
10バイト目から14バイト目までの合計5バイト分を読み取って数値に変換する方法を教えてください
\x00みたいな数値に出来ない文字も多分含まれてると思う
2017/11/23(木) 20:32:36.21ID:vMrSGbA+0
>>832
取扱い方がわからないデータはlist()関数でリストにしてしまえば何とかなる
そこがPythonのいいところ
2017/11/23(木) 22:26:39.85ID:nWQ0rMhWM
pythonでロギングする時の
標準的なお作法を教えてください
835デフォルトの名無しさん (ワッチョイ 2d03-egQi [202.157.118.83])
垢版 |
2017/11/24(金) 18:46:26.32ID:FT0GxPR+0
まずパンツを膝までおろします
2017/11/24(金) 18:55:46.99ID:zQ8PtUHL0
次に靴下をはきます
ネクタイもしめます
837デフォルトの名無しさん (スフッ Sd43-Swnd [49.104.32.185])
垢版 |
2017/11/24(金) 19:07:44.27ID:8KHbh2nud
そして、ブラジャーを頭に載せ、ホックを顎の下でかけます。
2017/11/24(金) 19:56:14.98ID:vRCBY0gDM
先生、次はどうすればいいですか?
http://brao.cocolog-nifty.com/blog/images/2008/02/09/cimg1259s.jpg
2017/11/25(土) 10:09:02.15ID:9Bmt/hRM0
Daydream cafeでも歌って踊っとけ。
840デフォルトの名無しさん (アウアウウー Saa9-soeq [106.161.127.2])
垢版 |
2017/11/25(土) 18:41:15.77ID:9b0Zi7+ba
>>806
AI用のライブラリーが豊富だから。tensoflow chainer KERAS caffe sklearn numpy。
2017/11/26(日) 10:42:26.14ID:mB/Eb6Ir0
>>833
横だが役に立つ概念を知って俺のレヴェルがうなぎのぼり
2017/11/26(日) 12:23:31.85ID:X7lzL3Ri0
>>841
おう、役に立って良かったよ
ただ、何百万件とかの大量のデータをいきなりリストに変換すると
スワップしてPCがゴゴゴと唸って怖いので
Sqliteに格納してSQLで絞り込み処理をした方が良い
2017/11/26(日) 12:44:24.86ID:mB/Eb6Ir0
>>842
ありがとう そしてありがとう
844デフォルトの名無しさん (エーイモ SE03-Ssgc [1.114.5.10])
垢版 |
2017/11/26(日) 13:10:52.12ID:zpWerX6ME
python3.6で日本語をバイナリに書き込む方法を教えてください

s = 'あいうえお'.encode('utf-8')
with open('hoge', 'wb') as f:
f.write(s)

これだとそのままファイルに あいうえお が書き込まれてしまいます
2017/11/26(日) 13:15:07.31ID:mB/Eb6Ir0
>>844
1行目と2行目の間に
s=bytes(s, 'UTF-8')
でどうよ
846デフォルトの名無しさん (エーイモ SE03-Ssgc [1.114.11.206])
垢版 |
2017/11/26(日) 14:25:48.11ID:duzuPXfxE
>>845
TypeError: encoding without a string argument になりましたになりました
2017/11/26(日) 15:16:09.67ID:mB/Eb6Ir0
s=bytes(s)
でどうよ?
2017/11/26(日) 15:28:26.96ID:esw4gVHx0
そもそもファイルに書き込まれたことどうやって確認してるんだ?
utf8を解釈できるエディタでロケールが正しいなら「あいうえお」って確認できて当たり前
2017/11/26(日) 20:44:53.73ID:po9rLop30
書き込まれたデータを、バイナリエディタで見たら、バイナリになってるだろw

そもそも、書き込まれたデータは、バイナリしかないw

バイナリを読み込んだときに、どのように解釈したいか、だけ
2017/11/26(日) 20:58:07.85ID:X7lzL3Ri0
テキストファイルとバイナリファイルの違いは何ぞやってけっこう難しい問題よね
PC歴40年以上になるけど、きちんと解説している文献を見たことがない

おそらく、文字コード+(必要ならタブや改行コード)を書き込んだバイナリファイル=
テキストファイルという認識なのだと思うが、
以前バイナリエディタでアスキーコードと改行コードを打ちこんで保存したものを
テキストエディタで開いたら化け化けだった経験があるので何とも
2017/11/26(日) 21:09:46.45ID:8r4IIztua
>>850
Dive into python3 の4章に詳しく書いてあるからよく読んでおくように
852デフォルトの名無しさん (オッペケ Src1-9H21 [126.211.17.131])
垢版 |
2017/11/27(月) 12:31:20.38ID:xVeCnVyPr
なにが難しいんやそんなもん
テキスト以外はバイナリなだけやろ
853デフォルトの名無しさん (ワッチョイ 75b3-h3cN [126.243.95.107])
垢版 |
2017/11/27(月) 17:12:26.30ID:/wh5qHzF0
制御コードはテキストか否か。
854デフォルトの名無しさん (ワッチョイ 2d03-egQi [202.157.118.83])
垢版 |
2017/11/27(月) 18:38:20.53ID:kbE8zzrJ0
asciiで定義されてるコードはテキストやわ
何を今さらw
2017/11/27(月) 19:09:10.25ID:x+zk8UEy0
FTP の、文字列・バイナリの違いは、
文字列なら、改行コードをOS に合わせて変換するだけ

UNIX系: LF
Windows: CR + LF
2017/11/27(月) 19:21:12.32ID:xlqZ/1YN0
>>852
そうは言うけど、どうやって判断するの?
「テキストエディタで開いて文字化けすればバイナリファイル」と
断言して良いのだろうか
857デフォルトの名無しさん (ワッチョイ 2d03-egQi [202.157.118.83])
垢版 |
2017/11/27(月) 19:26:33.68ID:kbE8zzrJ0
>>856
お前にとってテキストとして意味がないファイルは全てバイナリファイルや
簡単な事やろ?
2017/11/27(月) 19:45:28.39ID:x+zk8UEy0
基本、データはすべてバイナリと考えたら良い。
まず、そのデータ・ファイルを読み込む際に、バイト配列で読み込む

次に、そのバイト配列を、自分の好きなエンコード、例えば、UTF-8 などで読み込む

その時に、そのエンコードで読み込めない(変換できない)場合に、
変換エラーにするか、「?」の文字にするかを選択する

例えば、TeraPad なら、中国の地名の「深せん」の「せん」が、「?」になる。
そのエディタで対応していない文字

たぶん、各社の絵文字などにも、対応していない
859デフォルトの名無しさん (ワッチョイ 75b3-h3cN [126.243.95.107])
垢版 |
2017/11/27(月) 20:15:44.26ID:/wh5qHzF0
ASCIIの範囲がテキストならユニコードはテキストか否か。
860デフォルトの名無しさん (ワッチョイ 2d03-egQi [202.157.118.83])
垢版 |
2017/11/27(月) 20:17:00.63ID:kbE8zzrJ0
>>859
テキストじゃなきゃなんだってゆうきだよwお前はバカかw
861デフォルトの名無しさん (ワッチョイ 75b3-h3cN [126.243.95.107])
垢版 |
2017/11/27(月) 20:27:06.03ID:/wh5qHzF0
ユニコードにはASCIIの範囲外も含まれるが。
862デフォルトの名無しさん (ワッチョイ 75b3-h3cN [126.243.95.107])
垢版 |
2017/11/27(月) 20:30:15.06ID:/wh5qHzF0
ASCIIの制御コードに続けて各国の規格が定義するコードをいくつか並べることで
文字を拡張する方式はよくあるが。
863デフォルトの名無しさん (ワッチョイ 75b3-h3cN [126.243.95.107])
垢版 |
2017/11/27(月) 20:35:21.80ID:/wh5qHzF0
EBCDICはテキストか否か。
864デフォルトの名無しさん (ワッチョイ 2d03-egQi [202.157.118.83])
垢版 |
2017/11/27(月) 20:38:38.75ID:kbE8zzrJ0
バカが発狂よったw
865デフォルトの名無しさん (ワッチョイ 2d03-egQi [202.157.118.83])
垢版 |
2017/11/27(月) 20:40:34.07ID:kbE8zzrJ0
このように安易に「奥が深い症候群」に陥いるバカは非常に多い
このスレの皆さんはくれぐれも ID:/wh5qHzF0 のようなバカにはならないように気をつけましょうw
866デフォルトの名無しさん (ワッチョイ 75b3-h3cN [126.243.95.107])
垢版 |
2017/11/27(月) 20:47:24.90ID:/wh5qHzF0
データのみを見てテキストとバイナリを判別するのは非常に難しい。
867デフォルトの名無しさん (アウウィフ FFa9-yX5g [106.171.65.200])
垢版 |
2017/11/28(火) 13:45:32.73ID:EqW/cfNYF
>>856
そもそもおまいの言う文字化けって何よω
868デフォルトの名無しさん (エーイモ SE13-Ssgc [111.188.4.29])
垢版 |
2017/11/28(火) 17:31:05.15ID:ZUlri39EE
すいませんバイナリの質問したものですけど例えば
適当に日本人が公開しているしているタグに日本語が使われているmp3ファイルをバイナリでオープンすると
日本語の部分が\x00な表記でひょうじされてるんですよ、直接日本語がうめこまれているわけではなくて。
2017/11/28(火) 17:44:28.54ID:IH6NtJ+R0
>>868
そのmp3のタグは文字コードUTF-16で
バイナリエディタで覗いたときの文字コードがUTF-8とかになっててあってないんじゃ
2017/11/28(火) 19:00:08.45ID:42wmLUO20
>>868
まさかとは思うけど、君は日本語がデジタルデータの中にどんな風に格納されていて
それをPythonのbytesオブジェクトとして表示するとどう見えるのか知らないのでは?
以下でやっていることがわかるかい?

>>> s = 'あ'.encode('utf-8')
>>> s
b'\xe3\x81\x82'
>>> list(s)
[227, 129, 130]
>>> s.decode('utf-8')
'あ'
2017/11/28(火) 21:12:37.66ID:PkJOT8pW0
UTF-8: 英語は1バイトで、日本語は3バイト。
1〜6バイトまで、様々な文字がある。
文字数がバイト数から、即座に判別できない

UTF-16: 2バイト。ただし、サロゲートペアは4バイト。
バイト数 / 2 で、文字数がわかるが、サロゲートペアは2文字扱い。
容量も食わないので、OS が内部表現として採用している

UTF-32: すべてが4バイト。
バイト数 / 4 で、文字数がわかるが、容量を食う。
英語は1バイトだから、1文字で3バイトも無駄になる
2017/11/28(火) 21:59:31.84ID:mixPogxLd
この話題python関係あんのか
873デフォルトの名無しさん (ワッチョイ 2d03-9H21 [202.157.118.83])
垢版 |
2017/11/28(火) 22:03:33.68ID:NUsVNyKE0
ないとも言えるしあるとも言える
2017/11/28(火) 22:05:42.08ID:iKttisUw0
50%の確率であるとないが同時に存在する
2017/11/28(火) 22:58:03.47ID:pxOGQ3F20
ネコの話はするなよw
876デフォルトの名無しさん (ワッチョイ 1560-Swnd [180.48.78.237])
垢版 |
2017/11/28(火) 23:50:31.54ID:IH1XlVw60
>>870
つい最近関心持った初心者だから、全く知らなかった。感動した。
2017/12/01(金) 12:21:33.54ID:TdDYHDvjd
超初心者にはとっても関係あるな
2017/12/02(土) 18:02:43.78ID:p9+QOh+80
超初心者です!!

pythonのパイは

 おっぱいのパイですか?
2017/12/02(土) 20:20:36.13ID:pzCW2tCE0
雪風はマンホールにでも嵌まってろ
2017/12/02(土) 21:10:46.62ID:92OV+2vQ0
35歳は地獄に落ちてろ
2017/12/03(日) 01:40:54.21ID:bHdcLBGh0
マン ホール とは縁が無いな。
882デフォルトの名無しさん (ワッチョイ 7b4b-9wPJ [39.111.201.160])
垢版 |
2017/12/04(月) 21:32:15.93ID:3J3yzZKf0
素数無限ループプログラムを作りたいんですがどこが違うでしょう?
x = 2
while True:
for v in range(2,x)
if x% v == 0:
print(x,"素数じゃないです")
print(x,"素数です")
x += 1
883デフォルトの名無しさん (ワッチョイ 7b4b-9wPJ [39.111.201.160])
垢版 |
2017/12/04(月) 21:32:54.11ID:3J3yzZKf0
インデントはしてます
884デフォルトの名無しさん (ワッチョイ 7b4b-9wPJ [39.111.201.160])
垢版 |
2017/12/04(月) 21:34:09.36ID:3J3yzZKf0
x = 2
while True:
○○○○for v in range(2,x)
○○○○○○○○if x% v == 0:
○○○○○○○○○○○○print(x,"素数じゃないです")
○○○○○○○○print(x,"素数です")
x += 1
885デフォルトの名無しさん (ワッチョイ 7b4b-9wPJ [39.111.201.160])
垢版 |
2017/12/04(月) 21:35:29.81ID:3J3yzZKf0
○○○○x+=1です
何度もすいません
2017/12/04(月) 21:42:44.78ID:RO/+xkD7d
xが無限に大きくなりそう。vの半分に到達したら止めるとかじゃないの?
あと○が大きくてソースコードめっちゃでっかく見えて草
887デフォルトの名無しさん (ワッチョイ 7b4b-9wPJ [39.111.201.160])
垢版 |
2017/12/04(月) 21:49:05.70ID:3J3yzZKf0
>>886
無限に素数を求めたいんです
2017/12/04(月) 21:49:34.89ID:hHBqwzph0
いろいろよくないが
素数じゃないですのうしろでbreakしてないのが一番よくない
889デフォルトの名無しさん (ワッチョイ 7b4b-9wPJ [39.111.201.160])
垢版 |
2017/12/04(月) 21:53:32.65ID:3J3yzZKf0
>>888
breakしてもうまく動きませんでした
890デフォルトの名無しさん (ワッチョイ 7b4b-9wPJ [39.111.201.160])
垢版 |
2017/12/04(月) 21:58:53.57ID:3J3yzZKf0
x = 2
while True:
for v in range(2,x):
if x % v == 0:
print(x,"素数じゃないです")
break
else:
print(x,"素数です")
break
x += 1

出来ました
break忘れでしたありがとうこざいました
891デフォルトの名無しさん (ワッチョイ 6960-Ieda [180.48.78.237])
垢版 |
2017/12/04(月) 22:44:36.96ID:oxfnBKGj0
>>888
2017/12/04(月) 23:46:11.17ID:Ate9xzsS0
>890
2で割り切れるかどうかだけで素数判定をすることになっているのでは?
elseのインデント位置をforに対応する位置にして、elseのあとのbreakを除くと良いと思う

rosettacode を見ると、いろいろな言語での素数生成プログラムがあるよ。
https://rosettacode.org/wiki/Category:Prime_Numbers
2017/12/05(火) 07:15:15.99ID:RHvSV7s+M
>>890
出来てないと思うよ。
894デフォルトの名無しさん (ワッチョイ 8b93-SZ7f [153.198.99.136])
垢版 |
2017/12/05(火) 23:17:12.91ID:ApGym90K0
csvファイルを読み込みたいのですが、spyderで%matplotlib inline を打ち込むとエラーが出ます。
調べたら、%matplotlib inline はJupiterでしか使えないとあったのですが、
spyderでcsvファイルを読み込むにはどうしたらいいですか?
2017/12/05(火) 23:33:57.50ID:FESTc25Ha
>>894
pandas のread_csvが簡単
896デフォルトの名無しさん (ワッチョイ 8b93-SZ7f [153.198.99.136])
垢版 |
2017/12/06(水) 00:00:50.30ID:b1sVJJ6/0
>>895
ありがとうございます!試してみます!
897デフォルトの名無しさん (ワッチョイ 9be7-F7Qh [175.177.4.65])
垢版 |
2017/12/08(金) 02:33:58.46ID:yOp3IF8X0
CV3で画像操作がしたくpythonをはじめたばかりなのですが、spyderでCV3がうまく動きません。どの辺が悪いのでしょうか
※環境 Windows10 + Anaconda5(python3.6) python3.5環境で使用
//
condaでopenCV3をインストールしようとしたらopenCV3がpython3.5にしか対応していないと怒られたので

conda create -n my35 python=3.5 anaconda
activate my35
conda install -c mempo opencv3
conda install spyder
というふうにしてインストール

my35環境のspyderを起動してコンソールで
import cv2
cv2.__version__
'3.1.0'

img = cv2.imread('?C:\\test\\test.jpg')
としても読み込まれず変数エクスプローラーで
 名前:img  型:NoneType  サイズ:1  値:NoneType object of buitins module
と、なり中身がないので当然
cv2.imshow('result', img) 
error: ..\..\..\modules\highgui\src\window.cpp:281: error: (-215) size.width>0 && size.height>0 in function cv::imshow
となります

//////
ちなみに
from PIL import Image
img2=Image.open('C:\\test\\test.jpg')
w,h=img2.size
print(w,h)
とすると 1920 1150 とこちらはちゃんと動きます
898デフォルトの名無しさん (ワッチョイ 9be7-F7Qh [175.177.4.65])
垢版 |
2017/12/08(金) 02:42:05.37ID:yOp3IF8X0
>>397
レスを各段階で17行目に変なゴミが入ってましたので訂正です
誤 img = cv2.imread('?C:\\test\\test.jpg')
正 img = cv2.imread('C:\\test\\test.jpg')
2017/12/08(金) 08:18:54.68ID:DD2Dk6IR0
画像ファイルのパスが間違っている場合,エラーは返しませんが
print img とコマンドを実行すると None と表示されます

画像を扱う
http://labs.eecs.tottori-u.ac.jp/sd/Member/oyamada/OpenCV/html/py_tutorials/py_gui/py_image_display/py_image_display.html

たぶん、パスがダメなんだろう。
これでやってみれば?

img = cv2.imread('messi5.jpg',0)
2017/12/08(金) 16:55:34.19ID:siqp+YKo0
>>897
"c:/test/test.jpg"にしたらどう?
901デフォルトの名無しさん (ワッチョイ 9be7-F7Qh [175.177.4.93])
垢版 |
2017/12/08(金) 23:03:18.63ID:0HkgwfKx0
>>899-900
解決いたしました。

私はいつもフルパス名をファイルのプロパティのセキュリティ・タブにある
「オプジェクト名:○○○○○○」からは拾ってくるのですが
○○○○○○の前にゼロ幅文字の(UNICODE)202Aがまぎれていることがわかりました。

PILでは自動的に除外され処理されるようですが、CV3ではそのまま異常パスとしてエラーになっていたようです。
>>898の?がまさにShiftJISで姿を現した202Aだったんです

また躓きましたら質問させていただきます
902デフォルトの名無しさん (ワッチョイ 9be7-F7Qh [175.177.4.93])
垢版 |
2017/12/08(金) 23:11:31.18ID:0HkgwfKx0
>>901
あれれれれれ
今やったらPILでもゼロ幅文字の202A付きだとエラーになりました
ウソを書いてしまってごめんなさーい
2017/12/08(金) 23:43:52.79ID:2yGEQiN10
ネタとかじゃなく、冪演算ってなに?
2017/12/08(金) 23:44:33.48ID:DD2Dk6IR0
コピペして動かない時は、まず、手打ちで確認すれば良い

コピペすると、文字列の前後に、見えない文字が入っている場合があるのか?
2017/12/09(土) 02:00:18.77ID:JfFOgwZK0
>>901
ああ、VisualStudioでたまにエラーになることがあるけど、それだったのかな。
確かにUnicode制御文字の表示をすると、lefみたいなのが出てきますね。
2017/12/09(土) 06:30:17.94ID:zmyZSbxv0
>>903
「冪演算」で検索!
907デフォルトの名無しさん (アウアウエー Sa13-DYuz [111.239.51.161])
垢版 |
2017/12/09(土) 12:42:11.78ID:nuTX+Pqxa
>>903
power
2017/12/09(土) 17:34:55.72ID:2qWnHoxv0
冪演算(演算の結果を入力として、繰り返し演算を適用する)
f(f(f(f(x))))

冪等(何回演算を適用しても、同じ結果になる)
f(f(x)) = f(x)
909デフォルトの名無しさん (アウアウエー Sa13-3E/f [111.239.38.53])
垢版 |
2017/12/09(土) 17:41:12.23ID:OzUSTjtJa
e^xの微分か
2017/12/09(土) 19:03:01.58ID:J0X0FLOJ0
ありがとうございました。
2017/12/13(水) 01:20:26.66ID:OlIk0vU10
from random import randint
from tkinter import *
# 変数・定数の定義
COLS, ROWS = [30, 20] # ステージのサイズを定義
CW = 20 # セルの描画サイズ
data = [] # ステージデータ
for y in range(0, ROWS): # ステージをランダムに初期化  data.append([(randint(0, 9) == 0) for x in range(0, COLS)])

data.append([(randint(0, 9) == 0) for x in range(0, COLS)])
の意味がよく分かりません

データ型がdataの関数?append()の中に  (randint(0, 9) == 0) を入れる意味がわからないです
試しにここだけ抜いてもエラーが出るので必要なのは分かるんですが……

これはネットに落ちていたライフゲームのプログラムです
最初に、ステージをランダムに初期化し、その後、ライフゲームのルールに沿って、300ミリ秒ごとにシミュレーションを行うプログラムの一部です
2017/12/13(水) 02:56:56.17ID:4KXZfZ3x0
某サイトで連載中のコード?解説されてますがな。
print(data)
print(len(data), len(data[0]))
として出力して、再度解説を読みましょう
913デフォルトの名無しさん (ワッチョイ f5a8-/xmB [180.38.104.101])
垢版 |
2017/12/13(水) 04:55:09.26ID:93IgVeuK0
matplotlibについてなのですが

ある単語について、横軸に日付、縦軸に発言者として、
発言者ごとにどの日に単語を発言したのかというのを
描写しようと思っているのですが
matplotlibを全くと言っていいほど使ったことがなく
どのようにしたら良いのかわかりません。
教えていただけますでしょうか?
2017/12/13(水) 07:58:19.00ID:OlIk0vU10
>>912
ありがとうございます
dataの中身を表示とdataの中のリスト数、その中の要素の数を表示するんですよね
そのなかでfalse とtrueがランダムに出ているところで (randint(0, 9) == 0) が役立ってるんだろうと思うんですが、
([(randint(0, 9) == 0) for x in range(0, COLS)])
, も入っていないのにどうやってrandintの数が使われているのかさっぱりです
調べても どれも,が入っている例ばかりで……

つまり、文法的な意味がわからないということです
説明ベタですみません
2017/12/13(水) 08:19:08.50ID:Q4Pr3FYR0
>>913
そのデータはcsvなりなんなりで既にできてて
読み込みも済んでるのか?
2017/12/13(水) 08:46:50.66ID:NEKJL9xMH
>>914

1.
from random import randint
print(randint(0, 9))

何が出力されるでしょうか。

2.
from random import randint
print(randint(0, 9) == 0)

何が出力されるでしょうか。

3.
print([True for x in range(0, 30)])

何が出力されるでしょうか。

4.
from random import randint
print([(randint(0, 9) == 0) for x in range(0, 30)])

何が出力されるでしょうか。
917デフォルトの名無しさん (ワッチョイ 2d23-DYuz [122.215.159.129])
垢版 |
2017/12/13(水) 12:43:49.99ID:caPUZ5ER0
import numpy as np
import pandas as pd
df = pd.Series(np.zeros(366), index=pd.date_range('13/12/2017', periods=366))
df['2018-1-1'] = 1
df.plot()
plt.show()

エラーになります助けてorz
2017/12/13(水) 14:28:15.83ID:Urz8HOp90
エラーメッセージを貼ったら考えます
2017/12/13(水) 14:33:38.48ID:4KXZfZ3x0
>>911
a.以下のコードは・・・
from random import randint

COLS, ROWS = [30, 20]
CW = 20data = []
for y in range(0, ROWS):
----data.append([(randint(0, 9) == 0) for x in range(0, COLS)])
----print(data)

b.このコードとほぼおなじことです。
from random import randint

COLS, ROWS = [30, 20]
data = []
for y in range(0, ROWS):
----for x in range(0, COLS):
--------data.append(randint(0, 9) == 0)
----print(data)

インデントは-に置き換えてあります。
2017/12/13(水) 14:34:12.15ID:4KXZfZ3x0
内包表記と呼ばれる書き方です。
最も外側の () はappendメソッドのための()なので気にしない。
次の[]はリストデータ型で処理するという意味。
[]の中を見るとfor節があります。
これを見つけたら内包表記が使われていると覚えましょう。

以下Pythonドキュメントの該当部分のURL
https://docs.python.jp/3/tutorial/datastructures.html#list-comprehensions

https://docs.python.jp/3/tutorial/datastructures.html#nested-list-comprehensions

ドキュメント要約するとbの書き方は、人にとってもPCにとっても面倒だから内包表記作ったよ。
2017/12/13(水) 14:35:53.05ID:4KXZfZ3x0
Pythonドキュメントを読んだら次のURLを読んで実行しましょう。
http://postd.cc/comprehensions-in-python-the-jedi-way/

めまいを起こすようなら以下のURLで処理を可視化しましょう。
http://www.pythontutor.com/visualize.html#mode=edit

ここまでやりこんだら、"集合 外延 内包"でググろう。
または以下のURLを読みましょう。
http://www.geocities.jp/k27c8_math/math/set_theory/another_how_to_expression_set.htm
そうするとなぜ","がないのかではなく、
なぜ"|"がないのかと質問すべきだったとわかるじゃないかな?

文字多すぎと怒られたので分割しました。
2017/12/13(水) 15:25:19.21ID:caPUZ5ER0
import numpy as np
import pandas as pd
df = pd.Series(np.full(366, np.nan), index=pd.date_range('13/12/2017', periods=366))
df['2018-1-1'] = 1
df.dropna().plot()
plt.show()

解決しました本当に有難うございました
923デフォルトの名無しさん (ワッチョイ 0e7b-Icwu [119.15.148.144])
垢版 |
2017/12/15(金) 07:18:26.74ID:VeI40ieM0
win32comについて教えてください。
現在PythonスクリプトでAdobe InDesignの自動化プログラムの開発をしています。

import win32com.client
indd = win32com.client.dynamic.Dispatch("InDesign.Application.CS5_J")
doc = indd.Documents.Add()

で動作するのは確認しています。
やりたいことは、上記の「doc」の種類(COM上のクラス?)を特定したいのです。

イメージとしては、
doc._ole_type_(←実際にはないメソッド)
>> "Document"(←結果にCOMクラス名)
こんな感じに戻り値を求めたいのです。

どなたか、詳しい方、よろしくお願いいたします。
924デフォルトの名無しさん (ワッチョイ 0e3b-KBvp [183.76.110.2])
垢版 |
2017/12/16(土) 12:24:15.73ID:mmje4ODI0
>>923
http://python.6.x6.nabble.com/Problem-using-win32com-client-Dispatch-on-Win7-64bit-td1957248.html
http://timgolden.me.uk/pywin32-docs/html/com/win32com/HTML/PythonCOM.html
http://timgolden.me.uk/pywin32-docs/html/com/win32com/HTML/docindex.html
https://stackoverflow.com/questions/10496681/python-idispatch-client-without-type-library
https://books.google.co.jp/books?id=fzUCGtyg0MMC
2017/12/16(土) 12:51:08.73ID:rq6V2ypo0
print(doc)
926デフォルトの名無しさん (ワッチョイ 0e7b-Icwu [119.15.148.144])
垢版 |
2017/12/16(土) 19:01:08.83ID:cReZoebJ0
>>924
ホントにありがとう
が、print(doc)では目的は目的は果たせませんでした(print objectはファイル名が返りました)が、
貼っていただいたドキュメントからCLSIDからCOMオブジェクトのクラスを調べる目途がたちました。
(makepyやってませんでした、すみません)
Rubyのwin32oleだと簡単に調べられたので簡単な方法があると思っていたのですが、win32comは大分様子が違いますね。

さー、rubyから移植+Opencv連携開発がんばるぞー
2017/12/16(土) 20:02:02.69ID:rq6V2ypo0
>Rubyのwin32oleだと簡単に調べられた
タイプライブラリなくてもか?
928デフォルトの名無しさん (ワッチョイ 0e7b-Icwu [119.15.148.144])
垢版 |
2017/12/17(日) 10:13:55.95ID:PHyu6h2W0
>>927
>タイプライブラリなくてもか?
http://jongware.mit.edu/idcs5js/index_Assignment%20Suite.html
http://indesign.cs5.xyz/dom/domtree.html
このあたりを見ながらと、

https://www.artonx.org/data/asr/
これをインストールして

require 'win32ole'
indd = WIN32OLE.new("InDesign.Application.CS5_J")
doc = indd.documents.add
p doc.ole_type.name
--> "Document"
(実際はアプリケーションの選択オブジェクトを調べて分岐させます)
で、調べながら作ってました。
RubyはActiveScriptingやOpencvライブラリの対応が良く分からなくて、
忙しい中、調査に時間かけるくらいなら、既に実績のあるPythonに移行しようかとおもってます。
929デフォルトの名無しさん (アウウィフ FF1b-r1k3 [106.171.78.22])
垢版 |
2017/12/17(日) 16:33:40.71ID:XxtCNzg/F
print(doc.__repr__())
print(doc.__str__())
930デフォルトの名無しさん (ワッチョイ 8e4b-bHD0 [39.111.201.160])
垢版 |
2017/12/18(月) 17:53:48.60ID:MhWfJDZS0
初心者の素朴な疑問なんだけど全てのライブラリは標準ライブラリの組合せで出来てるの?
931デフォルトの名無しさん (アウアウエー Sa7a-r1k3 [111.239.42.222])
垢版 |
2017/12/18(月) 18:08:49.74ID:cTfL64uCa
素朴な回答だけどCで書かれてるのも多い
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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