[rkward-cvs] SF.net SVN: rkward: [1067] trunk/rkward/rkward/plugins

tfry at users.sourceforge.net tfry at users.sourceforge.net
Fri Jan 5 12:13:46 UTC 2007


Revision: 1067
          http://svn.sourceforge.net/rkward/?rev=1067&view=rev
Author:   tfry
Date:     2007-01-05 04:13:45 -0800 (Fri, 05 Jan 2007)

Log Message:
-----------
Get rid of the ancient 20 part in 20descriptive

Added Paths:
-----------
    trunk/rkward/rkward/plugins/descriptive/
    trunk/rkward/rkward/plugins/descriptive/descriptive_statistics.php
    trunk/rkward/rkward/plugins/descriptive/descriptive_statistics.xml
    trunk/rkward/rkward/plugins/descriptive/skewness_kurtosis_test.php
    trunk/rkward/rkward/plugins/descriptive/skewness_kurtosis_test.xml

Removed Paths:
-------------
    trunk/rkward/rkward/plugins/20descriptive/

Copied: trunk/rkward/rkward/plugins/descriptive/descriptive_statistics.php (from rev 1066, trunk/rkward/rkward/plugins/20descriptive/descriptive_statistics.php)
===================================================================
--- trunk/rkward/rkward/plugins/descriptive/descriptive_statistics.php	                        (rev 0)
+++ trunk/rkward/rkward/plugins/descriptive/descriptive_statistics.php	2007-01-05 12:13:45 UTC (rev 1067)
@@ -0,0 +1,78 @@
+<?
+	function preprocess () {
+	}
+	
+	function calculate () {
+		global $mad_type;
+		global $constMad;
+
+		$vars = "substitute (" . str_replace ("\n", "), substitute (", trim (getRK_val ("x"))) . ")";
+		$trim = getRK_val ("trim"); //the fraction (0 to 0.5) of observations to be trimmed from each end of x before the mean is computed
+		$constMad = getRK_val ("constMad");
+		$mad_type = getRK_val ("mad_type");
+
+?>
+rk.temp.vars <- list (<? echo ($vars); ?>)
+rk.temp.results <- data.frame ('Object'=rep (NA, length (rk.temp.vars)))
+i=0;
+for (rk.temp.var in rk.temp.vars) {
+	i = i+1
+	rk.temp.results$'Object'[i] <- rk.get.description (rk.temp.var, is.substitute=TRUE)
+<?
+		if (getRK_val ("mean")) { ?>
+	rk.temp.results$mean[i] <- try (mean (eval (rk.temp.var), trim = <?echo ($trim) ;?>, na.rm=TRUE))
+<?		}
+		if (getRK_val ("median")) { ?>
+	rk.temp.results$median[i] <- try (median (eval (rk.temp.var), na.rm=TRUE))
+<?		}
+		if (getRK_val ("range")) { ?>
+	try ({
+		rk.temp.range <- try (range (eval (rk.temp.var), na.rm=TRUE))
+		rk.temp.results$min[i] <- rk.temp.range[1]
+		rk.temp.results$max[i] <- rk.temp.range[2]
+	})
+<?		}
+		if (getRK_val ("sd")) { ?>
+	rk.temp.results$'standard deviation'[i] <- try (sd (eval (rk.temp.var), na.rm=TRUE))
+<?		}
+		if (getRK_val ("sum")) { ?>
+	rk.temp.results$sum[i] <- try (sum (eval (rk.temp.var), na.rm=TRUE))
+<?		}
+		if (getRK_val ("prod")) { ?>
+	rk.temp.results$prod[i] <- try (prod (eval (rk.temp.var), na.rm=TRUE))
+<?		}
+		if (getRK_val ("mad")) { ?>
+	rk.temp.results$'Median Absolute Deviation'[i] <- try (mad (eval (rk.temp.var), constant = <? echo ($constMad);
+			if ($mad_type == "low") echo (", low=TRUE");
+			elseif ($mad_type == "high") echo (", high=TRUE"); ?>, na.rm=TRUE))
+<?		}
+		if (getRK_val ("length")) { ?>
+	rk.temp.results$'length of sample'[i] <- try (length (eval (rk.temp.var)))
+<?		}
+		if (getRK_val ("nacount")) { ?>
+	rk.temp.results$'number of NAs'[i] <- try (length (which(is.na(eval (rk.temp.var)))))
+<?		} ?>
+}<?
+	}
+	
+	function printout () {
+		global $mad_type;
+		global $constMad;
+?>
+rk.header ("Descriptive statistics", parameters=list ("Trim of mean", <?getRK ("trim") ;?><? if (getRK_val ("mad")) { ?>,
+					"Median Absolute Deviation",
+					paste ("constant:", <?echo ($constMad) ;?>, <?
+						if ($mad_type == "low") echo ('"lo-median"');
+						elseif ($mad_type == '"hi-median"');
+						else echo ('"average"'); ?>)<? } ?>))
+
+rk.results (rk.temp.results)
+<?
+	}
+	
+	function cleanup () {
+?>
+rm (list=grep ("^rk.temp", ls (), value=TRUE))
+<?
+	}
+?>

Copied: trunk/rkward/rkward/plugins/descriptive/descriptive_statistics.xml (from rev 1066, trunk/rkward/rkward/plugins/20descriptive/descriptive_statistics.xml)
===================================================================
--- trunk/rkward/rkward/plugins/descriptive/descriptive_statistics.xml	                        (rev 0)
+++ trunk/rkward/rkward/plugins/descriptive/descriptive_statistics.xml	2007-01-05 12:13:45 UTC (rev 1067)
@@ -0,0 +1,60 @@
+<!DOCTYPE rkplugin>
+<!-- This is a simple example, of how a "plugin" might be configured. -->
+<document>
+	<code file="descriptive_statistics.php" />
+	<dialog label="Descriptive Statistics" >
+		<tabbook>
+			<tab label="Variables">
+				<row>
+					<column>
+						<varselector id="vars" />
+					</column>
+					<column>
+						<varslot multi="true" type="numeric" source="vars" id="x" num_dimensions="1" label="variable(s):" required="true" />
+					</column>
+				</row>
+			</tab>
+			<tab label="Mean Standard Deviation">				
+				<column>
+					<checkbox value_unchecked="0" checked="true" value="1" id="mean" label="mean" />
+					<spinbox type="real" initial="0" min="0" id="trim" max="0.5" label="trim" />
+				</column>
+				<column>
+					<checkbox value_unchecked="0" checked="true" value="1" id="sd" label="standard deviation" />
+				</column>
+				<stretch/>
+			</tab>
+			<tab label="Median, MAD">
+				<column>
+					<frame label="Median, Range" >
+						<checkbox value_unchecked="0" value="1" id="median" label="median" />
+					</frame>
+					<frame label="Median Absolute Deviation (mad)" >
+						<checkbox value_unchecked="0" value="1" id="mad" label="mad" />
+						<spinbox type="real" initial="1.4628" id="constMad" label="Constant" />
+						<radio id="mad_type" label="Treatment of even sample sizes" >
+							<option value="low" label="use lo-median" />
+							<option value="average" label="use average" checked="true" />
+							<option value="high" label="use hi-median" />
+						</radio>
+					</frame>
+					<stretch/>
+				</column>
+			</tab>
+			<tab label="Range, Sum, Product and Length">
+				<row>
+					<column>
+						<frame>
+							<checkbox value_unchecked="0" checked="true" value="1" id="range" label="range" />
+							<checkbox value_unchecked="0" value="1" id="sum" label="sum" />
+							<checkbox value_unchecked="0" value="1" id="prod" label="prod" />
+							<checkbox value_unchecked="0" value="1" id="length" label="length" />
+							<checkbox value_unchecked="0" value="1" id="nacount" label="Na count" />
+						</frame>
+						<stretch/>
+					</column>
+				</row>
+			</tab>
+		</tabbook>
+	</dialog>
+</document>

Copied: trunk/rkward/rkward/plugins/descriptive/skewness_kurtosis_test.php (from rev 1066, trunk/rkward/rkward/plugins/20descriptive/skewness_kurtosis_test.php)
===================================================================
--- trunk/rkward/rkward/plugins/descriptive/skewness_kurtosis_test.php	                        (rev 0)
+++ trunk/rkward/rkward/plugins/descriptive/skewness_kurtosis_test.php	2007-01-05 12:13:45 UTC (rev 1067)
@@ -0,0 +1,63 @@
+<?
+        function preprocess () {
+        }
+
+	function calculate () {
+	$vars = "substitute (" . str_replace ("\n", "), substitute (", trim (getRK_val ("x"))) . ")";
+
+?>
+	
+	require(moments)
+
+	rk.temp.options <- list (doskewness=<? getRK ("skewness"); ?>, dokurtosis=<? getRK ("kurtosis"); ?>, dolength=<? getRK ("length"); ?>, donacount=<? getRK ("nacount"); ?>)
+
+	rk.temp.results <- list ()
+	i=0; for (var in list (<? echo ($vars); ?>)) {
+	i = i+1
+	rk.temp.results[[i]] <- list ()
+	rk.temp.results[[i]]$object <- rk.get.description (var, is.substitute=TRUE)
+	if (rk.temp.options$doskewness) try (rk.temp.results[[i]]$skewness <- skewness (eval (var), <? getRK ("narm_skewness"); ?>))
+	if (rk.temp.options$dokurtosis) try (rk.temp.results[[i]]$kurtosis <- kurtosis (eval (var), <? getRK ("narm_kurtosis"); ?>))
+	if (rk.temp.options$dolength) try (rk.temp.results[[i]]$length <- length (eval (var)))
+	if (rk.temp.options$donacount) try (rk.temp.results[[i]]$nacount <- length (which(is.na(eval (var)))))
+}
+
+
+<?
+        }
+	function printout () {
+?>	
+	 rk.header("Skewness and Kurtosis")
+
+cat ("<table border=\"1\">")
+	cat ("<tbody>")
+		cat ("<tr>")
+			cat ("<td>Variable Name</td>")
+			if (rk.temp.options$dolength) cat ("<td>Length</td>")
+			if (rk.temp.options$donacount) cat ("<td>NAs</td>")
+			if (rk.temp.options$doskewness) cat ("<td>Skewness</td>")
+			if (rk.temp.options$dokurtosis) cat ("<td>Kurtosis</td>")
+		cat ("</tr>")
+for (i in 1:length (rk.temp.results)) {
+		cat ("<tr><td>", rk.temp.results[[i]]$object, "</td>")
+		if (rk.temp.options$dolength) cat ("<td>", rk.temp.results[[i]]$length, "</td>")
+		if (rk.temp.options$donacount) cat ("<td>", rk.temp.results[[i]]$nacount, "</td>")
+		if (rk.temp.options$doskewness) cat (paste ("<td>", rk.temp.results[[i]]$skewness,"</td>"))
+		if (rk.temp.options$dokurtosis) cat (paste ("<td>", rk.temp.results[[i]]$kurtosis,"</td>"))
+		cat ("</tr>")
+}
+	cat ("</tbody>")
+cat ("</table>")
+
+
+<?
+        }
+	function cleanup () {
+
+?>
+	rm (rk.temp.results)
+	rm (rk.temp.options)
+	rm (var)
+<?
+        }
+?>
\ No newline at end of file

Copied: trunk/rkward/rkward/plugins/descriptive/skewness_kurtosis_test.xml (from rev 1066, trunk/rkward/rkward/plugins/20descriptive/skewness_kurtosis_test.xml)
===================================================================
--- trunk/rkward/rkward/plugins/descriptive/skewness_kurtosis_test.xml	                        (rev 0)
+++ trunk/rkward/rkward/plugins/descriptive/skewness_kurtosis_test.xml	2007-01-05 12:13:45 UTC (rev 1067)
@@ -0,0 +1,42 @@
+<!DOCTYPE rkplugin>
+
+<!-- This is the skewness and kurtosis plug-in-->
+
+<document>
+	<code file="skewness_kurtosis_test.php"/>
+	<dialog label="Skewness and Kurtosis">
+		<tabbook>
+			<tab label="Select Variables" >
+				<row>
+					<column>
+						<varselector id="vars"/>
+					</column>
+					<column>
+						<frame label="The number of the selcted values must be between 3 and 5000">
+							<varslot type="numeric" multi="true" id="x" source="vars" required="true" label="variable(s):"/>
+						</frame>
+						<stretch/>
+					</column>
+				</row>
+			</tab>
+			<tab label="Options">
+				<frame label="Skewness">
+					<checkbox id="skewness" label="Skewness" value_unchecked="0" value="1" checked="true" />
+					<radio id="narm_skewness" label="Calculate Skewness with Missing Values">
+						<option value="na.rm = FALSE" label="FALSE"/>
+						<option value="na.rm = TRUE" label="TRUE"/>
+					</radio>
+				</frame>
+				<frame label="Kurtosis">
+					<checkbox id="kurtosis" label="Kurtosis" value_unchecked="0" value="1" checked="true" />
+					<radio id="narm_kurtosis" label="Calculate Kurtosis with Missing Values">
+						<option value="na.rm = FALSE" label="FALSE"/>
+						<option value="na.rm = TRUE" label="TRUE"/>
+					</radio>
+				</frame>
+				<checkbox id="length" label="Show Length" value_unchecked="0" value="1" checked="false" />
+				<checkbox id="nacount" label="Show Missing Values" value_unchecked="0" value="1" checked="false" />
+			</tab>
+		</tabbook>
+	</dialog>
+</document>


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the rkward-tracker mailing list