タブ区切りテキストからの分析をスムーズに - 統計電卓更新2018年09月27日 13:15

実際にデータ分析を行っていると、タブ区切りテキストを読み込んでの作業が多いので、この作業の流れがスムーズになるように、統計電卓の機能を見直しました。

起動画面

起動すると、データ入力画面になります。「入力データ」の左下に「タブ区切りテキストの読み込み」ボタンを設けました。押下すると、ファイルを読み込むためのダイアログが出てきます。

タブ区切りテキストの読み込み

データを読み込んだところです。例では、気象庁から、日ごとの気温データをダウンロードし、ヘッダなどをExcelで修正し、タグ区切りテキストに出力したものを読み込んでいます。

メニューからの遷移

キーパッド左上のハンバーガーメニューを開きます。上に、作業用の3つの遷移メニューを設けました。左右(又は上下)、それぞれに必要な画面を切り替える手間を省きます。

ヒストグラム

「記述統計とヒストグラム」を選ぶと左右(又は上下)の画面が、記述統計用とヒストグラム表示用に切り替わります。例では、平均気温でヒストグラムを描いています。

散布図

続いてメニューから「回帰分析と散布図」を選びます。回帰分析と散布図表示用に切り替わります。例では、横軸に年月日を摂って、日ごとの最高気温の遷移をグラフにしています。

回帰分析

年月日の軸を数値の軸に変えると、1次回帰のグラフを描画します。

Windows 10S 向けのテスト - デスクトップブリッジ2018年09月29日 18:02

ふと気がつくと、以前いろいろ苦労した、デスクトップブリッジを用いたアプリのWindowsストアでの認証手続が、通常のUWPアプリと同じになっている。

Review Results

それではと、溜まっていた手続を進めてみると、不合格の通知。アプリが起動しない、という。環境を見ると、Windows 10Sで失敗している。忘れていた、ということで、Windows 10Sのテストを実施することに。

Windows 10Sのテストといっても、手許に実機はない。後で述べるが、仮にあったとしても、ストアから配布されるものでないとインストールできない。そこで、Windows 10 Proの環境にDevice Guard整合性ポリシーをセットアップしてテストを行うという。

VMwareでProの環境を一つ作り、ダウンロードしたポリシーを当てる。3種のポリシーがあり、再起動で切り替える。

ひとつめのAuditモードでは、不整合がイベントビューアに記録される。作成した環境をリモートコンピュータに指定して、Deployしたアプリを実行する。致命的でないメッセージも出力されるので、判別が難しい。

ふたつめは、テスト用に用意された証明書を使って確認するもの。手作業でパッケージを作成することになるので、それなりに手間。

signtoolのエラー

手順に従い、signtoolを用い、用意された証明書を使ってサインをするが、エラー。PowerShellのコンソールメッセージに従い、調べてみると、manifestにある「発行者」に不整合がある。

AppxManifestひとつめ

手順に、AppxManifest.xmlファイルを暫定的に書き換える、とあるが、実際は2箇所。
一つは、
bin\(architecture)\Debug\AppX
にあるもの。

AppxManifestふたつめ

もう一つは、
bin\(architecture)\Debug
にあるもの。

両方の発行者を、用意されたテスト用の証明書にしたがって書き換える。VisualStudioで編集するPackage.appxmanifestはいじらない。これでエラーは解消。

証明書ストアの選択

用意したWindows 10Sの方では、テスト用の証明書を受け容れる準備。手順に「証明書ストアの選択」で「Trusted People」を選ぶ、とあるが、日本語の環境では、「信頼されたユーザー」。少々訳がわかりにくい。

テスト用証明書を用いたパッケージのインストール

OneDrive経由で、サインしたパッケージをWindows 10Sのテスト環境に転送し、appxファイルをダブルクリックすると、App Installerが起動し、インストールが完了。PowerShellでAdd-AppxPackageを使いたいところだが、ポリシーによってはPowerShellが起動しない。App Installerは、追加でセットアップされるので、Windows Updateで最新の状態にしておく。

これで問題なく起動すれば、OK。

ストア用の証明書を用いたパッケージはインストールできない

ちなみに、ストアに提出用のappxuploadファイルの拡張子をzipにしてから展開し、中のappxやappxbudleをインストールしようとすると、証明書まわりのエラーになる。Windowsストア経由で入手したものでないといけない。したがって、3つめのポリシーを用いたテストは、開発段階で使えるものではない。

結果、どのテストでも問題はなく、不合格の理由は、Windows 10S由来のものではなさそう、とのオチ。

アーキテクチャからNeutralを外す

以前、合格した別のアプリの環境と見比べてみると、パッケージ作成時のアーキテクチャの選択に誤りがあった模様。Neutralを外し、x86とx64を明示的に選択しなくてはいけなかった。