空飛ぶチンアナゴの統計解析日記

統計解析を嗜むチンアナゴのメモ帳です

EndNote X9はTahoe非対応です

【EndNote】macOS Tahoe 26 と EndNote の互換性について(11/19更新)

2025年9月、Apple 社から macOS Tahoe 26 がリリースされました。
各バージョンとの互換性については下記の通りです。

【EndNote 2025、21】
EndNote の開発元のクラリベイト社で動作検証を行った結果、macOS Tahoe 26 との互換性が確認できました。
EndNote 2025、21 を macOS Tahoe 26 で問題なくご利用いただけます。


【EndNote 20 以下】
EndNote 20 以下のバージョンにつきましては今後も正式対応の予定はございません。
OS アップデートに伴う不具合に関しては、サポート対象外となります。

macOS Tahoe をご利用の場合は EndNote のアップグレードをご検討ください。

以上
https://www.usaco.co.jp/endnote/topics.html?itemid=2561&dispmid=641&srsltid=AfmBOooYSetdJ3DDBxkW4N63-INWOGcqu-P5qvabpecm_GtbNUQmbg1V

今、メインで使っているMacbook ProではEndNote X9が入っていて、今回のmacOS Tahoe 26が最後のOSになるんだけど……macOS Tahoe 26にアップデートしない方がいいのかなぁ?
さすがにEndNoteをこのタイミングで買い直すのは大変アホらしいと感じます。

javascriptでJSONが読み込めない問題をどうするか?


ちょっとwebサイトをいじる機会があったのですが「file://〜なんかpath〜/index.html」を開いてそこで

fetch("data.json") 

を実行してもほぼ全てのブラウザーでCORSエラーで動きません。
これは「ローカルファイルを勝手に読み込まれては危ない」からほとんどのブラウザーの仕様でそうなっています。
これではローカル環境で動作チェックができないので、別の方法を考える必要があります。

ローカルサーバーを立てればいい

ローカルで簡単にテストしたいときはローカルサーバーを立てるのが定番です。

  1. Pythonの簡易サーバーを使う
  2. Node.jsの簡易サーバーを使う

Node.jsはあまり使わない関係でPythonで説明します

Pythonでローカルサーバーを立ち上げるためには

VSCのターミナルに

# 作業ディレクトリに移動して
python -m http.server 8000

と入力すると作業ディレクトリー上にサーバーが立ち上がります。
あとはブラウザで「http://localhost:8000/index.html」にアクセスするとjsonファイルを読み込むことができます。

サーバーを止める方法

不要になったら control+Cをターミナルにいれることでサーバーは止まります。

数字型を文字列にする時は地味にめんどくさいよねという話


みなさん、お馴染みの

destring var, replace
tostring var, replace

ですが、ラベルのついた数字型の列を文字列に置換する時に地味にめんどくさいことが起きます。

  • 数字ラベルのあるデータは直接文字に置換できない
  • 作戦を考える
    • 1. ラベルを剥いで置換する場合
    • 2. 新しい変数に置換する
    • 3. decodeを使ってラベル名を文字列に使う
  • まとめ
続きを読む

Affinity v3がついに来る!?


https://affinity.serif.com/ja-jp/

10月2日の朝にユーザーの元に「今後登場してくるものに乞うご期待 👋」というメールが届きました。
10月30日に公開されるようなのですが、これはやっぱりv3ということなのでしょうか?
期待が高まります。

続きを読む

SPSSでの変数の作り方


よくある

* hogeは10段階ぐらいある変数
* 5以上とそれ未満の2値化をしたい
g  hoge_bi = 0
replace hoge_bi = 1 ///
    if hoge >= 5

という処理をSPSSのsyntaxを使ってやりたいとします。

変数の作り方

難しいことを考えなければ、COMPUTEという関数を使い下記のように記載します

COMPUTE hoge_bi = 0.

これで変数は作れます。
ただし、先に変数の型を指定せずに作成した場合、強制的にF8.2の小数点型で作成されるのでそこは注意が必要です。

条件で変数を変更する場合

STATAと同じように一度設定した変数に対しては

IF (条件式) 処理.

にて記載することができます。
STATAの

replace hoge_bi = 1 ///
    if hoge >= 5

SPSSだと

IF (hoge >= 5) hoge_bi =1.

となります。

まとめて記載すると

COMPUTE  hoge_bi = 0.
IF (hoge >= 5) hoge_bi =1.

という形になります。

ラベルの話


STATAであれば数字の変数にラベルを振るのはよくあることです。
例えば

* gender は1, 2, 9のいずれかの数字が入っているbyteの変数とする
label variable gender "性別"
label define label_gender 1 "男" 2 "女" 9 "不明"
label values gender label_gender

といった処理をSPSSでやりたいとします。

変数名のラベルの付け方

SPSSではVARIABLE LABELSという変数を使います。
例えば

VARIABLE LABELS gender "性別".

というようになります。
文字列についてはダブルクオート(")で囲ってもいいですし、シングルクオート('')で囲っても問題ありません。
また、質問票のデータのように変数名がQ1、Q2、Q3とある場合は

VARIABLE LABELS Q1 "問1" 
    / Q2 "問2"
    / Q3 "問3".

と記載することもできます。

値ラベルの付け方

SPSSではVALUE LABELSを使います。
先ほどのSTATAの処理である

label define label_gender 1 "男" 2 "女" 9 "不明"
label values gender label_gender

SPSSのsyntaxで記載する場合は、

VALUE LABELS gender 1 "男" 2 "女" 9 "不明".

と書きます。
また、はいかいいえで回答する質問票のデータであるQ1、Q2、Q3にまとめて値ラベルを振りたい場合は

VALUE LABELS Q1 Q2 Q3 1 "YES" 2 "No" 9 "Unknown".

とすることでまとめて処理できます。