CloudExpression["name"]
値が永続的にクラウドに保存される式を表す.
CloudExpression["http://…"], CloudExpression["https://…"]
指定されたURIのクラウド式を表す.
CloudExpression[base,part1,part2,…]
partiで指定されるクラウド式の一部を表す.
CloudExpression
CloudExpression["name"]
値が永続的にクラウドに保存される式を表す.
CloudExpression["http://…"], CloudExpression["https://…"]
指定されたURIのクラウド式を表す.
CloudExpression[base,part1,part2,…]
partiで指定されるクラウド式の一部を表す.
詳細とオプション
- CloudExpression["name"]を評価すると,即座にURIの部分が$CloudExpressionBaseの値で決定されるCloudExpression[uri]になる.
- クラウド式に保存される値は,任意のWolfram言語式でよい.
- 値がネストしたリストと連想からなるとき,一部の検索と更新は直接クラウドで行われる.
- CloudExpression[…][part1,part2,…]はクラウド式の指定部分の値を取り出す.
- CloudExpression[…][]はクラウド式全体の値を取り出す.
- CloudExpression[…][part1,part2,…]=value はクラウド式の一部の値を設定する.
- CloudExpressionオブジェクトには次の操作をすることができる.
-
Get クラウド式の完全な値を得る Put クラウド式に新たな完全な値を入れる Part 一部を表すクラウド式オブジェクトを返す Set クラウド式の一部に新たな値を割り当てる Unset クラウド式から一部を削除する AppendTo クラウド式内のリストまたは連想に加える AssociateTo 新たな値を連想内のキーに関連付ける AddTo,Increment,… クラウド式の一部を加えたり増分したりする DeleteCloudExpression クラウド式を削除する Length クラウド式の長さを返す KeyExistsQ キーがクラウド式内にあるかどうかをテストする SetOptions クラウド式に関連付けられたオプションを設定する Options クラウド式に関連付けられたオプションを得る SetPermissions クラウド式のパーミッションを設定する ClearPermissions クラウド式のパーミッションをクリアする - CloudExpression[…][[part1,part2,…]]はCloudExpression[…,part1,part2,…]を与える.ここからGetを使って値を取り出すことができる.
- クラウド式には,値がクラウドに保存される次のオプションがある.
-
PartProtection Automatic どの部分が変更から守られているか Permissions Automatic アクセス等のパーミッション - CreateCloudExpressionでクラウド式を作成した後,Optionsを使ってクラウド式のオプションを取り出し,SetOptionsを使って変更することができる.
- 連想では,変更可能な操作が欠落キーに適用されると,操作の適用前に連想の値が初期化される.
-
Set 欠落キーとSet内で指定された値を関連付ける AssociateTo 値を初期化して空の連想にする AppendTo 値を初期化して空リストにする AddTo, Increment, ... 値を初期化して0にする TimesBy, DivideBy 値を初期化して1にする
例題
すべて開く すべて閉じる例 (3)
スコープ (11)
ce = CreateCloudExpression[{a, b, c}]ce[2]ce[2] = xce[]AppendTo[ce, y];ce[3]=.ce[]ce = CreateCloudExpression[<|"a" -> 1, "b" -> 1, "x" -> 1|>]ce["b"] = 2;AssociateTo[ce, "c" -> 3];ce["x"]=.ce[]ce = CreateCloudExpression[0]Do[ce++, 5]ce[]ce -= 5;ce[]ce = CreateCloudExpression[Range[5]]ce[3]ce[1 ;; 3]ce[1 ;; 3] = 0;ce[1 ;; 3]ce[3]++;AppendTo[ce, 6];ce[]ce = CreateCloudExpression[{{1, 2, 3}, {4, 5, 6}, {7, 8, 10}}]ce[]//MatrixFormce[1]ce[All, 1]ce[All, 1] = 0;ce[]//MatrixFormce[-1, All] += 2ce[]//MatrixFormce[-1, -1] = 99;ce[]//MatrixFormSetOptions[ce, PartProtection -> None];ce[-1]=.ce[]//MatrixFormce = CreateCloudExpression[<|"a" -> {Today, 4}, "b" -> {Yesterday, 2}|>]ce["a"]AppendToを使って新たなキーを加える:
AppendTo[ce, "c" -> {Tomorrow, 6}];ce["c"]存在しないキーを検索するとFailureオブジェクトが返される:
ce["d"]PartProtectionがAutomaticに設定されているときにキー"c"に関連付けられた値を更新しようとすると,Failureオブジェクトが生成される:
ce["c"] = {Tomorrow, 9}PartProtectionの値をNoneに変えて任意の更新操作ができるようにする:
SetOptions[ce, PartProtection -> None];ce["c"] = {Tomorrow, 3}ce[]ce = CreateCloudExpression[<|"a" -> {1, 2}, "b" -> {3, 4}|>]part = ce[["a"]]Get[part]AppendTo[part, 3]ce[]ce = CreateCloudExpression[<|"integer" -> 5, "real" -> 1.23|>]クラウド式は,機械精度数に対して操作している際はインプレースの追加をサポートする:
ce[All] += 2ce[]ce[All] *= 3ce[]クラウド式は,結果が強制的に実数になるインプレースの割り算をサポートする:
ce[All] /= 2ce[]ce = CreateCloudExpression[[image]];ce[]ce[1]ce = CreateCloudExpression[{<|"name" -> "Alice", "height" -> Quantity[165, "Centimeters"], "weight" -> Missing["Unknown"]|>, <|"name" -> "Bob", "height" -> Quantity[174, "Centimeters"], "weight" -> Missing["Unknown"]|>}]クラウド式はLengthをサポートする:
Length[ce]クラウド式の部分もLengthをサポートする:
Length[ce[[1]]]ce = CreateCloudExpression[<|"Alice" -> <|"height" -> Quantity[165, "Centimeters"], "weight" -> Quantity[57, "Kilograms"]|>, "Bob" -> <|"height" -> Quantity[174, "Centimeters"]|>|>]クラウド式はKeyExistsQをサポートする:
KeyExistsQ[ce, "Bob"]KeyExistsQ[ce, "John"]KeyExistsQもクラウド式の部分に使うことができる:
KeyExistsQ[ce["Alice"], "weight"]KeyExistsQ[ce["Bob"], "weight"]オプション (2)
PartProtection (1)
ce = CreateCloudExpression[{{1, 2, 3}, {4, 5, 6}}]式のPartProtectionをAllに設定し,いかなる更新もできないようにする:
SetOptions[ce, PartProtection -> All]値を更新しようとするとFailureオブジェクトが返される:
ce[All, 1] = 0Permissions (1)
ce = CreateCloudExpression[{{1, 2, 3}, {4, 5, 6}}]クラウド式のパーミッションを公開に設定し,任意のクラウドユーザがアクセスできるようにする:
SetPermissions[ce, "Public"]パーミッショングループを使って名前付きのグループの任意にユーザのクラウド式の読取りを許可する:
SetPermissions[ce, PermissionsGroup["mygroup"] -> {"Read"}]特性と関係 (9)
CloudExpressionsは既存のクラウド式を返す:
CloudExpressions[]ce = CreateCloudExpression[{1, 2, 3}]クラウド式に保存された式全体をPutで変更することができる:
Put[<|"a" -> 1, "b" -> 2|>, ce]既存の値はGetで取り出すことができる:
Get[ce]Get[CloudExpression[…]]は短縮形CloudExpression[…][]に等しい:
ce[]ce = CreateCloudExpression[{1, 2, 3}]DeleteCloudExpressionはクラウド式を削除する:
DeleteCloudExpression[ce]クラウド式は,DeleteObjectを使って削除することもできる.
ce = CreateCloudExpression[{1, 2, 3}]AppendToはリストの末尾に新たな要素を加える:
AppendTo[ce, 4]ce[]AppendToはAssociationにも使うことができる:
ce = CreateCloudExpression[<|"a" -> 1, "b" -> 2|>]AppendTo[ce, "c" -> 3]ce[]AppendToは既存のキーに関連付けられた値を変更する:
AppendTo[ce, "b" -> 0]ce[]ce = CreateCloudExpression[<|"a" -> 1, "b" -> 2|>]AppendToは,キーがまだ存在しない場合は,連想の末尾に項目を加える:
AppendTo[ce, "x" -> 3];AppendTo[ce, "b" -> 2];ce[]AssociateToは既存の項目は並べ替えない:
AssociateTo[ce, "x" -> 4];ce[]ce = CreateCloudExpression[{{1, 2, 3}, {4, 5, 6}, {7, 8, 10}}]Unsetで各リストの最終要素を削除する:
ce[[All, -1]]=.ce[]部分保護をNoneに設定する:
SetOptions[ce, PartProtection -> None]部分保護がNoneに設定されていると最初のリストを削除することができる:
ce[[1]]=.ce[]クラウド式を使ってイベントを効率的に数えることができる.まず,クラウド式内の連想を保存することから始める:
ce = CreateCloudExpression[<||>]users = {"Alice", "Bob", "Charlie", "David", "Eva"};ユーザのランダムな集合を増分する.値は,まだ存在しない場合は,増分前に自動的に0に初期化される:
Do[ce[RandomChoice[users]]++, 5];ce[]クラウド式を使ってHTTPリクエスト等からメタデータを集めることができる.まず,クラウド式の連想を保存することから始める:
ce = CreateCloudExpression[<||>]HTTPリクエストを表す連想のリストを準備する.それぞれがユーザ名とリクエストしたクライアントのユーザ・エージェントを含んでいる:
users = {<|"user" -> "Alice", "user-agent" -> "Mozilla/5.0"|>,
<|"user" -> "Alice", "user-agent" -> "Wolfram HTTPClient"|>,
<|"user" -> "Bob", "user-agent" -> "Safari"|>};HTTPリクエストをしたクライアントを表すユーザをランダムに選んでメタデータを集める.値は,まだ存在しない場合は,AppendTo操作の前に自動的に空リストに初期化される:
Scan[
AppendTo[ce[#user], <|"date" -> Now, "user-agent" -> #"user-agent"|>]&,
RandomChoice[users, 8]
]ce[]FileByteCountを使ってクラウド式が使っているクラウドストレージを得る:
ce = CreateCloudExpression[{[image], [image]}]FileByteCount[ce]考えられる問題 (4)
クラウド式は,PrependToはサポートしない:
ce = CreateCloudExpression[{1, 2, 3}];PrependTo[ce, 0]クラウド式内のネストした欠落キーに対する操作はサポートされていない:
ce = CreateCloudExpression[<|"Bob" -> <|"last_score" -> 11, "best" -> 31|>|>]スコアの値を欠落したユーザに関連付けると,失敗オブジェクトが返される:
ce["Alice", "last_score"] = 7必要なら,KeyExistsQを使って新たなキーについての値を初期化することができる:
If[!KeyExistsQ[ce, "Alice"], ce["Alice"] = <||>;]ネストしたキーを挿入すると,Set操作の前に"last_score"が空の連想に自動的に初期化される:
ce["Alice", "last_score"] = 7PartProtection->Noneが設定されていないと,非原子的値の設定や削除を試みても失敗する:
ce = CreateCloudExpression[{{1}, {1, 2}, {1, 2, 3}}]ce[1] = NoneSetOptionsを使って変更ができるようにする:
SetOptions[ce, PartProtection -> None]ce[1] = None;ce[]64ビットの機械整数または実数で表せない数は,クラウド式には保存できない:
ce = CreateCloudExpression[<|"bigInt" -> 100!, "biggerInt" -> 10*^600|>]ce[]拡張精度整数に対してインプレースの算術操作を行うと,整数が強制的に実数にされることがある:
ce["bigInt"] *= 2ce["bigInt"]拡張精度整数あるいは実数に対して算術操作が試みられ,その数が強制的に機械サイズの数にすることができないと,失敗オブジェクトが返されて操作は実行されない:
ce["biggerInt"] *= 2おもしろい例題 (3)
polyhedra = Association[Rule@@@PolyhedronData["Chiral", {"StandardName", "Graphics3D"}]
];Take[polyhedra, 2]ce = CreateCloudExpression[polyhedra]FileByteCount[ce]ce["PentagonalHexecontahedron"]人口動態統計の調査を実行するWebフォームを構築する.まず,クラウド式を作ってデータを集める:
ce = CreateCloudExpression[{}, "demo/BMISurvey"]form = FormFunction[{
"sex" -> <|"Label" -> "Sex", "Interpreter" -> {"Male" -> "M", "Female" -> "F"}|>,
"age" -> <|"Label" -> "Age", "Interpreter" -> Restricted["Integer", {0, 130}]|>,
"mass" -> <|"Label" -> "Mass", "Interpreter" -> Interpreter[Restricted["Quantity", "Kilograms", {0, 400}]]|>,
"height" -> <|"Label" -> "Height", "Interpreter" -> Interpreter[Restricted["Quantity", "Centimeters", {30, 300}]]|>
},
Block[{hcm, mkg, ce = CloudExpression["demo/BMISurvey"]},
mkg = N[QuantityMagnitude[#mass], MachinePrecision];
hcm = N[QuantityMagnitude[#height], MachinePrecision];
AppendTo[ce, <|"mass" -> mkg, "height" -> hcm, "age" -> #age, "sex" -> #sex|>];
"Thank you for submitting!"
]&,
AppearanceRules -> <|"Title" -> "BMI Sampling"|>
]formCloudObject = CloudDeploy[form, CloudObject[], Permissions -> "Public"]ユーザにデータを送信してもらう.次に,ユーザの入力から年齢のヒストグムを構築する:
Histogram[ce[All, "age"], {1}]dataBySex = GatherBy[ce[], #sex&];bmi = Map[(#mass / (#height / 100) ^ 2)&, dataBySex, {2}];Histogram[bmi, {1}, "Probability", AxesLabel -> {"BMI", None}, ChartLegends -> {"Female", "Male"}]CreateCloudExpression[<|"timings" -> {}, "users" -> <||>, "languages" -> <||>|>, "demo/form/languageIdentify"]リクエスト文字列の言語を識別するフォーム関数を作る.フォーム関数はリクエストの結果,リクエストしたクラウドユーザのID,所要時間を記録する:
form = FormFunction[{"sentence" -> <|"Label" -> None, "Hint" -> "Please enter the sentence and let the Wolfram language identify the language."|>},
Block[{ce = CloudExpression["demo/form/languageIdentify"],
requesterID, language, timing},
requesterID = Replace[$RequesterCloudUserID, None -> "Anonymous"];
{timing, language} = AbsoluteTiming[LanguageIdentify[#sentence]];
AppendTo[ce["users", requesterID],
<|"timing" -> timing, "submitDate" -> Now, "language" -> language|>];
ce["languages", CommonName[language]]++;
AppendTo[ce["timings"], timing];
language
]&,
AppearanceRules -> <|"Title" -> "Language identifier"|>
]CloudDeploy[form, CloudObject["demo/form/langID"], Permissions -> "Public"]フォームが何度か送信された後で,識別された言語のリストを取り出す:
ce = CloudExpression["demo/form/languageIdentify"];
ce["languages"]DateHistogram[ce["users", All, All, "submitDate"], "Day"]Dataset[ce["users", "documentation@wolfram.com"]]関連するガイド
-
▪
- クラウド関数と配備 ▪
- クラウド上の構造化データ ▪
- 永続ストレージ ▪
- コンテンツの共有と埋込み
テキスト
Wolfram Research (2016), CloudExpression, Wolfram言語関数, https://reference.wolfram.com/language/ref/CloudExpression.html (2021年に更新).
CMS
Wolfram Language. 2016. "CloudExpression." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2021. https://reference.wolfram.com/language/ref/CloudExpression.html.
APA
Wolfram Language. (2016). CloudExpression. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/CloudExpression.html
BibTeX
@misc{reference.wolfram_2026_cloudexpression, author="Wolfram Research", title="{CloudExpression}", year="2021", howpublished="\url{https://reference.wolfram.com/language/ref/CloudExpression.html}", note=[Accessed: 13-September-2026]}
BibLaTeX
@online{reference.wolfram_2026_cloudexpression, organization={Wolfram Research}, title={CloudExpression}, year={2021}, url={https://reference.wolfram.com/language/ref/CloudExpression.html}, note=[Accessed: 13-September-2026]}