Python関連のことを調べてみた2021年02月26日

Python関連のことを調べてみた2021年02月26日

Equalumアップデート検証をやってみた:2

#今回はいよいよ可視化に挑戦!
前回は、3個のテーブルをCDC設定されたMySQL上の作成し、そのテーブルをPythonで自動更新しながらEqualumのレプリケーション機能を検証してみました。結果としては、非常にシンプルで簡単な設定でCDCストリーミング・レプリケーションが実現出来る事が確認できましたので、今回の検証では続編としてターゲット側のSingleStore側更新状況を簡単なPythonツールを作成して可視化してみたいと思います。

#まずは可視化ツールの作成
この辺は、既に多くの諸先輩方がご苦労の末に作られたコードが、ネット上に数多く公開されていますので、取り急ぎそれらを参考にしてサクッと作ってみます。
Anaconda+Jupyter Notebook環境に必要なモジュール類を導入して以下のコードを書きます(内容は適宜書き換えてお使いください)
SQLで使うテーブル名は、前回の検証で使ったものと同じ名称にしておきます。

~~~Python
# coding: utf-8
#
# レプリケーション状況の即時可視化表示(4個のグラフを一括表示)
#       

元記事を表示

ROSの勉強 第15弾:パラメータ化

# #プログラミング ROS< パラメータ化 >

##はじめに
1つの参考書に沿って,ROS(Robot Operating System)を難なく扱えるようになることが目的である.その第15弾として,パラメータ化を扱う.

##環境
#####仮想環境
|||
|:-:|:–|
|ソフト|VMware Workstation 15|
|実装RAM|2 GB|
|OS|Ubuntu 64 ビット|
|isoファイル|ubuntu-mate-20.04.1-desktop-amd64.iso|

#####コンピュータ
|||
|:-:|:–|
|デバイス|MSI|
|プロセッサ|Intel(R) Core(TM) i5-7300HQ CPU @ 2.50GHz 2.50GHz|
|実装RAM|8.00 GB (7.89 GB 使用可能)|
|OS|Windows (Windows 10 Home, バージョン:1909)|

#####ROS
|||
|:-:|:–|
|Distribution|noetic|
|プログラミング言語|Python 3.8.5|

##パラメー

元記事を表示

Equalumアップデート検証をやってみた:1

#今回はEqualumのアップデート検証を行ってみます。
以前検証報告をさせて頂いた、kafka+SPARK環境を独自のノウハウと技術で統合し、先進のCDCエージェント技術を駆使してエンド・ツゥ・エンドでの**Exactly Once**を提供するEqualumなるソリューションに関して、最近大きなアップデートが有りましたので、取り急ぎ検証と結果共有をさせて頂きます。

#何が変わった??
今回のバージョンでは、今までOracleのデータベース対応だけだった**レプリケーション機能**が、MySQL等の他のCDC対応データベースでの利用が可能になっています。また、以前のバージョンで対応していたOracle環境同様に、オリジナルの選択肢が単に増えただけではなく、レプリケーションの着地側データベースの選択肢も選べる様になっていますので、データシステム全体のコストバランスを考えた、より適切なシステム展開をサポートする事が可能です。

#では、レプリケーション機能を使ってみます。
今回の環境としては、

![スクリーンショット 2021-02-25 11.51.38.png](https://

元記事を表示

pythonファイル種別判別

# ファイル種別の判定方法

拡張子だけでファイル種別を判別できるのであれば以下でOK

“`python
>>> from mimetypes import guess_type
>>> guess_type(“test.csv”)
(‘application/vnd.openxmlformats-officedocument.wordprocessingml.document’,
None)

“`

しかし拡張子が信用できない場合や、拡張子のないファイルの判別はできない。
ファイルの中身で判定する必要がある。
PyPIにそれらしいライブラリがあったのだが、自分の欲しい種別が判定できなかったり、動作が遅いため自作することにした。(自分は拡張子なしファイルの中身が、ms office,csv,音声,動画,画像,圧縮ファイルなのか、その他テキストなのか,ショートカットなのか、未知のバイナリなのかをサクッと区別したい)

# 中身を評価したファイル種別判定
https://en.m.wikipedia.org/wiki/List_of_file_signatures
を参考にファイ

元記事を表示

Pythonのrequestsを使ってShopifyの GraphQL admin APIを呼び出す

## 概要

– 以前の記事[^1]で ShopifyAPI パッケージを使って,pythonからGraphQL を呼び出す方法を書いた
– よく用いられている requests でも呼び出す方法がわかったのでメモ
– curl と呼び出し方が若干異なり,github の issues[^2]で解決策が書いてあった.

## 手順

### 1. requests をインストール

“`shell
pip install requests
“`

### 2. python でソースコードを記述

– 環境に合わせて host_name, password を記述
– headers を設定する
– curl だと Content-Type は application/graphql だが,python の requests では application/json と記述しないといけない
– json={“query”: query}で query を記述する.

#### query のみ

“`python
import requests

# 環境に合わせて記述
hos

元記事を表示

【Python画像処理】Manimをインストールしてみる。

本当に純粋な個人的メモです。内容紹介やインストール方法などはこちら。
[Pythonで数式・グラフのアニメを描ける「Manim」](https://qiita.com/Tonoyama/items/a53d55f96008a5b8296c)
[Pythonで美しい動画を作ろう](https://qiita.com/Kohki_Mametani/items/3c7a44e2445958a5cc25)
[Manim Documentation:Installing to Mac](https://docs.manim.community/en/v0.1.1/installation/mac.html)

私の環境(Mac)では`brew cask`が動作せず、MacTexは手入力となりました。
[MacTeX のダウンロードとインストール](https://medemanabu.net/latex/mactex-download-install/)
[MacTeX – TeXShop を使ってみよう](https://medemanabu.net/latex/mactex-texshop/

元記事を表示

都道府県の名称⇔コード変換 – Python

日本都道府県の名称と[JIS X 0401-1973](http://www.soumu.go.jp/denshijiti/code.html)コードを変換するPythonユーティリティ`jp_pref`を紹介します。

都道府県名の文字列、リスト、もしくは pandas series をコードに簡単に変換できます。
その逆に、コードから名称への変換も簡単です。

## インストール

`pip install jp_pref`

## インポート

“`python
from jp_pref.prefecture import name2code, code2name
from jp_pref.prefecture import df as df_pref
“`

### 都道府県名称・コード変換

“`python
assert name2code(“東京都”) ==\
name2code(“東京”) == 13
assert code2name(13) == “東京都”
assert name2code([“東京都”, “大阪府”, “

元記事を表示

PythonでZoomミーティングに自動入室しよう

### 概要
新型コロナウイルスによる影響でほとんどの学校でオンライン授業を強いられているかと思います。
オンライン授業に伴い、ビデオコミュニケーションツールであるZoomを利用している方も多いと思います。

そんな中で、なにか**急な用事ができて授業を受けられない!**みたいなことが起きるかもしれませんよね?
すごく困りますよね?こういうときどうしますか?
友達のノートを写させてもらいますか?友達にZoom授業を録画してもらって送ってもらいますか?
でも、それって少なからず友達に迷惑をかけますし、もっと言えば友達に頼めない状況下だったら….(悲しい)

そんなもしもの状況に立ち向かうために、
**Zoomミーティングに自動入室して画面キャプチャを行う**スクリプトを作りました。
簡潔に言えば、「**リアルタイム授業をオンデマンド授業にしよう**」って感じです。

僕は上に記したような**どうしても、やむを得ずZoom授業に参加できない状況下にあるときのみ**の利用を想定して作ったので、
**決して、決して、”授業サボりたい”とか”寝坊しても安心”とかそういう悪いこと考えての利用は

元記事を表示

ARC113 振り返りメモ (C問題まで)

#結果
ABCまでの3完で, レート変化は730→796(+66)

#A問題
###概要
> A*B*C <= K となるような (A, B, C) の組の総数を求める ###方針 A*B*C <= K となる A, B, C (ただし, A <= B <= C とする)を求め, + A < B < C なら, 答えを + 6 ( 3 ! ) する. + A = B = C なら, 答えを + 1 する. + A, B, C のうち, いずれか2つが等しいなら, 答えを + 3 する. C++ での実装例は以下のようになる. 計算量の見積もり方が分からなかったが, O(KlogK)より少ない? ```cpp:a.cpp #include
using namespace std;
#define rep(i,n) for (long long i = 0; i < (n); i++) using ll = long long; using P = pair;

int

元記事を表示

[デイリーコーディング]リスト内の数値の正の数、負の数、ゼロそれぞれの割合を表示する

# 今日の問題: リスト内に入っている整数の正の数、負の数、ゼロそれぞれ合計し、リスト全体から見た各割合を出せ(小数点6桁四捨五入)

“`python:回答
def plusMinus(arr):
size = len(arr)
plus = [i for i in arr if i > 0]
minus = [i for i in arr if i < 0] zero = [i for i in arr if i is 0] print('{:.6g}'.format(len(plus) / size)) print('{:.6g}'.format(len(minus) / size)) print('{:.6g}'.format(len(zero) / size)) if __name__ == '__main__': arr = [-4, 3, -9, 0, 4, 1] plusMinus(arr) ``` ```python:結果 0.5 0.333333 0.166667 ``` ベターな回答: ```python de

元記事を表示

[Python]Pandasで小数点の連番を振る

## はじめに
こんばんは
簡単ですがpandasのデータフレームで
小数点の連番(シーケンス)を振りたかったので振りました。
ちょろっと調べてもそれっぽいのが出てこなかったので記事にしておきます。
(簡単すぎて誰も記事にしないのかも。。。)

環境はgoogle colabです。
結果は[Gist](https://gist.github.com/mototoke/4f59296c8bb16a5cf6bc6c86198555c6)にも上げてます。

# pandasのversion確認
“`python:
# version確認
import pandas as pd
pd.__version__
>> ‘1.1.5’
“`

“`python:
import pandas as pd
import numpy as np
# データフレーム作成
df = pd.DataFrame(np.arange(100).reshape(100, 1),
columns=[‘No’],)
df
“`