Stats

Popular Posts

Followers

這是留言板-既然來了,就留個言再走吧!

養花種魚數月亮賞星星 於 Monday, July 22, 2019 2:43 PM 發表


Please tell me what you thought about this blog. Comments, suggestions and views are welcomed.
繼續閱讀全文 這是留言板-既然來了,就留個言再走吧!

Excel 教學 用函數抓每行最後一筆資料

Chung-Yuan Dye 於 Friday, February 7, 2014 12:00 PM 發表



繼續閱讀全文 Excel 教學 用函數抓每行最後一筆資料

Mathematica 教學 統計檢定表格

Chung-Yuan Dye 於 Monday, January 27, 2014 6:17 PM 發表


表格多的時候,這倒是個好方法~~

myTTest1[data_]:=Flatten@{ToString[NumberForm[Mean@data[[All,2]],{4,3}]]<>
"\[PlusMinus]"<>ToString[NumberForm[StandardDeviation@data[[All,2]],{4,3}]],
ToString[NumberForm[Mean@data[[All,3]],{4,3}]]<>"\[PlusMinus]"<>
ToString[NumberForm[StandardDeviation@data[[All,3]],{4,3}]],
If[Abs[#]>0.00002,NumberForm[#,{4,3}],"0.000"]&/@TTest[{data[[All,2]],
data[[All,3]]},0,{"TestStatistic","PValue"},VerifyTestAssumptions->"EqualVariance"]};

myTTest2[data_]:=Flatten@{ToString[NumberForm[Mean@data[[1,All,2]],{4,3}]]
<>"\[PlusMinus]"<>ToString[NumberForm[StandardDeviation@data[[1,All,2]],{4,3}]],
ToString[NumberForm[Mean@data[[2,All,2]],{4,3}]]<>"\[PlusMinus]"
<>ToString[NumberForm[StandardDeviation@data[[2,All,2]],{4,3}]],
If[Abs[#]>0.00002,NumberForm[#,{4,3}],"0.000"]&/@TTest[{data[[1,All,2]],
data[[2,All,2]]},0,{"TestStatistic","PValue"},VerifyTestAssumptions->"EqualVariance"]}


mydata1[data_,cond1_,cond2_]:=Block[{height,weight,bmi,x1,x2,x3,x4},
height=Select[data,#[[3]]==cond1&&#[[1]]==cond2&][[All,{1,5,8}]];
weight=Select[data,#[[3]]==cond1&&#[[1]]==cond2&][[All,{1,6,9}]];
bmi=Select[data,#[[3]]==cond1&&#[[1]]==cond2&][[All,{1,7,10}]];
x1=Heigt=Select[data,#[[3]]==cond1&&#[[1]]==cond2&][[All,{1,11,15}]];
x2=Heigt=Select[data,#[[3]]==cond1&&#[[1]]==cond2&][[All,{1,12,16}]];
x3=Heigt=Select[data,#[[3]]==cond1&&#[[1]]==cond2&][[All,{1,13,17}]];
x4=Heigt=Select[data,#[[3]]==cond1&&#[[1]]==cond2&][[All,{1,14,18}]];
{height,weight,bmi,x1,x2,x3,x4}
]

mydata2[data_,cond2_]:=Block[{height,weight,bmi,x1,x2,x3,x4},
height=Select[data,#[[1]]==cond2&][[All,{3,8}]];
weight=Select[data,#[[1]]==cond2&][[All,{3,9}]];
bmi=Select[data,#[[1]]==cond2&][[All,{3,10}]];
x1=Select[data,#[[1]]==cond2&][[All,{3,15}]];
x2=Select[data,#[[1]]==cond2&][[All,{3,16}]];
x3=Select[data,#[[1]]==cond2&][[All,{3,17}]];
x4=Select[data,#[[1]]==cond2&][[All,{3,18}]];
SplitBy[#,(#[[1]])&]&/@{height,weight,bmi,x1,x2,x3,x4}
]

mylabel1={{"身高","體重","BMI","姿體前彎","立定跳遠","仰臥起坐","心肺適能"},
{"前測","前測","T 值","P-Value"}};
mylabel2={{"身高","體重","BMI","姿體前彎","立定跳遠","仰臥起坐","心肺適能"},
{"男生","女生","T 值","P-Value"}};

TableForm[myTTest1/@mydata1[data,"男","實驗組"],
TableHeadings->mylabel1]

TableForm[myTTest1/@mydata1[data,"女","實驗組"],
TableHeadings->mylabel1]

TableForm[myTTest1/@mydata1[data,"男","對照組"],
TableHeadings->mylabel1]

TableForm[myTTest1/@mydata1[data,"女","對照組"],
TableHeadings->mylabel1]

TableForm[myTTest2/@mydata2[data,"實驗組"],TableHeadings->mylabel2]

TableForm[myTTest2/@mydata2[data,"對照組"],TableHeadings->mylabel2]


繼續閱讀全文 Mathematica 教學 統計檢定表格

Mathematica 教學 多項式公因式分解

Chung-Yuan Dye 於 Thursday, January 16, 2014 6:21 PM 發表
http://www.ptt.cc/bbs/Mathematica/M.1389794909.A.0ED.html



common[exp_List]:=Block[{factor,tempexp,gcd},
(* 判斷是否為乘法,是的話因式分解;不是的話,加係數1在做因式分解 *)
(* 最後將乘法改成陣列 *)
tempexp=If[SameQ[Head@#,Times],Factor[#],
{1,Factor[#]}]&/@exp/.Times->List;
tempexp=Flatten/@tempexp;
(* 公因式 *)
factor=Intersection@@tempexp;
(* 係數的公因數 *)
gcd=GCD@@tempexp[[All,1]];
(* 輸出 *)
{Times@@factor*gcd,Times@@#/Times@@factor/gcd&/@tempexp}
]

繼續閱讀全文 Mathematica 教學 多項式公因式分解

Mathematica 教學 問卷項目分析

Chung-Yuan Dye 於 Tuesday, December 31, 2013 12:30 AM 發表



ItemAnalysis[data_]:=
Block[{varname=data[[1]],mydata=data[[2;;-1]],sum,lower,
upper,testdata,testdatalow,testdatahigh,itemdata},
sum=Flatten@{#,Total[#]}&/@mydata;
lower=Quantile[sum[[All,-1]],0.25];
upper=Quantile[sum[[All,-1]],0.75];
testdata={sum[[#]],
If[sum[[#,-1]]>=upper,2,
If[sum[[#,-1]]<=lower,1,0]]}&/@Range[Length@sum];
testdata=GatherBy[testdata,Last];
testdatalow=Cases[testdata,{a_,1},Infinity][[All,1]];
testdatahigh=Cases[testdata,{a_,2},Infinity][[All,1]];
itemdata={Flatten@{varname[[#]],"低分組",
Length@testdatalow[[All,#]],
NumberForm[N@Mean@testdatalow[[All,#]],{5,4}],
NumberForm[N@StandardDeviation@testdatalow[[All,#]],{5,4}],
{NumberForm[#[[1]],{5,4}],NumberForm[If[#[[2]]<0.00001,0,#[[2]]],{5,4}]}&/@
{TTest[{testdatalow[[All,#]],testdatahigh[[All,#]]},0,"TestDataTable",
VerifyTestAssumptions->"EqualVariance"][[1,1,
2,{2,3}]]}},{"","高分組",Length@testdatahigh[[All,#]],
NumberForm[N@Mean@testdatahigh[[All,#]],{5,4}],
NumberForm[N@StandardDeviation@testdatahigh[[All,#]],{5,4}],
"",""}}&/@Range[Length@varname];
TableForm[Flatten[itemdata,1],
TableHeadings->{None,{"題項","組別","個數","平均數","標準差","T值","P-Vale"}}]]

(*用法*)
(*資料的第一列為變數名稱*)
ItemAnalysis[你的資料]
繼續閱讀全文 Mathematica 教學 問卷項目分析

Mathematica 教學 Fun with SocialMediaData

Chung-Yuan Dye 於 Thursday, December 26, 2013 12:00 AM 發表


test=SocialMediaData["Facebook","FriendNetwork"]
test1=ToExpression[StringReplace[ToString@FullForm@test,"Graph["->"graph["]];
icondata={#[[1]],#[[2,1,2]],Import[#[[2,2,2]]]}&/@test1[[3,4,2]];
Graph@@(test1/.{test1[[3,-3,2]]->Apply[Rule,{#[[1]],
Placed[Image[#[[-1]],ImageSize->{30}],Center]}&/@icondata,{1}],test1[[3,-2,2]]->Tiny})

繼續閱讀全文 Mathematica 教學 Fun with SocialMediaData

Mathematica 教學 行取最大值後,那一行列不再考慮

Chung-Yuan Dye 於 Thursday, December 12, 2013 10:44 AM 發表
 作者  goldberg73 (高柏)                                         看板  MATLAB  標題  [討論]行取最大值後,那一行列不再考慮?由左而右  時間  Thu Dec 12 09:28:12 2013 ───────────────────────────────────────  假設有一A矩陣 4*4 A=[15 20 17 27; 14 78 41 21 ; 32 14 12 14 ; 14 25 25 24]   15 20 17 27 14 78 41 21 32 14 12 14 14 25 25 24  想要每一行取最大值,從第一行開始, 且出現最大值的那一列, 往後不予考慮 參與第二行取最大值... 由此類推  結果為:  32     (第一行的最大值為32 , 因此第二行取最大值,不考慮第三列) 78     (第二行的最大值是78,  因此第三行取最大值 不考慮第三列 和第二列) 25     (第三行的最大值是25 , 因此第四行取最大值不考慮第四列 第三列和第二列) 27     (不考慮 第二 三 四列下, 第四行的值為27)
myfun[data_]:=Block[{temp,tempdata=data,i},
temp[i_]:=Block[{x},
x=Position[tempdata[[All,i]],Max@tempdata[[All,i]]][[1,1]];
Set[tempdata[[x,i+1;;-1]],Table[-Infinity,{Length@tempdata-i}]];
tempdata];
Do[tempdata=temp[i],{i,Length@tempdata-1}];
Max[tempdata[[All,#]]]&/@Range[Length@tempdata]];

A={{15,20,17,27},{14,78,41,21},{32,14,12,14},{14,25,25,24}};
myfun[A]
繼續閱讀全文 Mathematica 教學 行取最大值後,那一行列不再考慮

Mathematica 教學 資料依指定區間分組

Chung-Yuan Dye 於 Tuesday, December 10, 2013 6:16 PM 發表

 作者  celestialgod (攸藍)                                       看板  MATLAB  標題  [運算] 給定區間分組  時間  Tue Dec 10 15:59:41 2013 ───────────────────────────────────────  data = randn(3670000,1);  我有一個區間是  -3 -2 -1 0 1 2 3  我想要把資料中小於-3分為第一組,界在-3跟-2之間分為第二組,剩下依此類推


data=RandomReal[{-5,7},100];
group=Partition[{-5,-4,-1,2,4,6,7},2,1];
myInterval[mynum_]:=Position[IntervalMemberQ[Interval[#],mynum]&/@group,True][[1,1]];
Gather[Sort@data,myInterval[#1]==myInterval[#2]&]
GatherBy[Sort@data,myInterval[#]&]

繼續閱讀全文 Mathematica 教學 資料依指定區間分組

Word 論文排版

Chung-Yuan Dye 於 Thursday, December 5, 2013 9:13 AM 發表

PowerCam Word排版教學

IE Only,需允許安裝POwerCam附屬程式。

介紹MS Word論文排版,檔案內容如下:
  1. 大綱模式
  2. 多階層清單
  3. 目錄製作
  4. 表目錄製作
  5. 圖目錄製作

繼續閱讀全文 Word 論文排版

Mathematica 教學 微積分的運用

Chung-Yuan Dye 於 Saturday, November 30, 2013 9:20 PM 發表




Mathematica在最佳化理論上的應用





















































繼續閱讀全文 Mathematica 教學 微積分的運用