ranking
yappa-ng 2.3.2
yappa-ng is an easy to use PHP photo gallery with numerous features. more>>
yappa-ng is free to download and free to use (GNU GPL).
Each picture can be viewed in many different sizes and the thumbnails and all other resizeing is created automatically on the fly. yappa-ng supports password protected albums, hit counters for albums and images, album info, image captions, album and image ranking, gallery overview and features a Top 10 images ranking system for each photo album and User Comments for each image.
yappa-ng has complete user selectable language support and different themes.
yappa-ng has a very comfortable and elaborate album-oriented photoalbum-administration web-interface. Each photo-album is a different directory and has a complete different set of options (thumbnail page layout, useage of image-hit-counters, top10, user-password,...)
Main features:
- easy, fast and intuitive _webbased_ setup ;-)
- Special webbased "Safe Mode Setup" to install yappa-ng on servers with safe_mode enabled and where the user has no way to change the fileownership after FTP!
- NO Database (MYSQL,....) needed ! (yappa-ng galleries with up to 37.000 images have been reported!!!!)
- yappa-ng is Free: Free to download and Free to use!
- very comfortable administration web-interface integrated (including create/delete albums, image upload/delete, edit captions (language dependent), configure Layout, and much more...)
- automatic thumbnail generation
- resizeable images (all sizes generated automatically from the original!!!)
- album and images hits counter
- album and images rating
- password protected albums
- User Comments (with "Smilies-support") for each image
- top X ranking system (the "X" means: every number you setup - album specific. This means: Top10 or Top25 or Top2 or ...)
- all configurations are album specific (configure every album seperatily to your demands - or use the default setup )
- switch languages on the fly wherever you want (including album titles/info, image captions, password queries,...)
- select your default language
- supports album title and album info (language support)
- supports image captions (language support)
- resized image caching (faster download!)
- random image for album preview
- themes support
- gallery photoalbum overview
- Slide Show for each Album
- Supports all filetypes (not only images/photos)<<less
RankQuest SEO Tools 1.3
RankQuest SEO Tools aims to help Web masters in search engine optimization. more>>
Meta Tag Analyzer examines the meta information of a site and tells you if the content is search engine friendly or not. Many search engines uses the details in the meta tag for ranking purpose, so this tag must be effectively analyzed for improvement in ranking.
aviManager 0.9.1
aviManager helps you manage your (large) movie (DVD, DivX) collection. more>>
aviManager attempts to find the best movie to watch. You will be surprised how good it works. There is also a nice imdb grabber for fast movie adding.
Main features:
- IMDB Grabber (including DVD-Cover, plot, ...)
- Voting System: user can vote movies, add movie to a wishlist (-4 = i dont wanna see this movie, 5 = i want to see this movie very soon) and can say how often he has seen the movie.
- Great search (optional fuzzy search, Regular Expressions) and ranking possibilites
- low system requirements (you dont have to setup something like MySQL (which is great, but not necessary for a small database like this).
- subtitle upload
- different owners
- export moviedatabase to readerfriendly format
- statistics
- Multilanguage support
- single user mode: for people who dont want this voting stuff for many users and who just need a little movie database. You can safely switch between modes, if you find friends who are willing to vote.
- users can add comments to every movie
- last seen list
- English, Danish, German, French, Finnish, Hungarian, Swedish, Spanish, Russian, Polish and Norwegian translations available.
Enhancements:
- medium link added in welcome_new_movies.tmpl (see UPGRADE!)
Bugfixes:
- imdb changes (director, search, genre)
- get_date in aviman.cfg: month from 0-11 (thanks (Flavio)
Statistics::RankOrder 0.12
Statistics::RankOrder contains algorithms for determining overall rankings from a panel of judges. more>>
SYNOPSIS
use Statistics::RankOrder;
my $r = Statistics::RankOrder->new();
$r->add_judge( [qw( A B C )] );
$r->add_judge( [qw( A C B )] );
$r->add_judge( [qw( B A C )] );
my %ranks = $r->mean_rank;
my %ranks = $r->trimmed_mean_rank(1);
my %ranks = $r->median_rank;
my %ranks = $r->best_majority_rank;
This module offers algorithms for combining the rank-ordering of candidates by a panel of judges. For the purpose of this module, the term "candidates" means candidates in an election, brands in a taste-test, competitors in a sporting event, and so on. "Judges" means those rank-ordering the candidates, whether these are event judges, voters, etc. Unlike "voting" algorithms (e.g. majority-rule or single-transferable-vote), these algorithms require judges to rank-order all candidates. (Ties may be permissible for some algorithms).
Algorithms included are:
Lowest-Mean
Trimmed-Lowest-Mean
Median-Rank
Best-of-Majority
In this alpha version, there is minimal error checking. Future versions will have more robust error checking and may have additional ranking methods such as pair-ranking methods.
magpy 0.3.0
Magpy is a Python wrapper for the mg search engine. more>>
magpy module features fast full text sarch, indexing and boolean queries.
Both mg and magpy are released under the GPL (General Public License).
Installation:
To install magpy from source, extract the archive magpy-*.tar.gz, and run the following commands:
./configure
python setup.py build
python setup.py install
Usage:
The following script demonstrates a simple search frontend:
#!/usr/bin/python
import mgindexer
import mgquery
import sys
store = mgquery.MGSearchStore("/tmp/data","alice")
while 1:
query = sys.stdin.readline()
q = store.newQuery(query)
print "Searching for",query,"(words",q.words(),")"
for docnum,ranking in q.execute():
print "Document",docnum,"matches (Ranking",ranking,")"
Before this works, you first have to create search store at (here) the location
"/tmp/data", with the name "alice".
The following script creates such a store from a raw text file, which it splits into individual documents by splitting it into paragraphs.
#!/usr/bin/python
import mgindexer
fi = open("alice13a.txt", "rb")
fo = open("alice13a.splitted.txt", "wb")
for line in fi.readlines():
# split the file on the paragraph boundaries
if line.strip() == "":
fo.write(mgindexer.SEPARATOR)
else:
fo.write(line)
fo.close()
fi.close()
mgindexer.makeindex("alice13a.splitted.txt", "/tmp/data/", "alice")
If you have many individual documents you would like to run a search on, the following script is probably closer to what you need (notice it creates a new collection of the name "files", so you have to substitute "alice" by "files" in the example query script above):
#!/usr/bin/python
import mgindexer
import os
PATH = "files/"
fo = open("searchdata.txt", "wb")
for file in os.listdir(PATH):
if os.path.isfile(PATH + file):
# copy file
fi = open(PATH + file, "rb")
for line in fi.readlines():
fo.write(line)
# write document boundary
fo.write(mgindexer.SEPARATOR)
fo.close()
mgindexer.makeindex("searchdata.txt", "/tmp/data", "files")
Enhancements:
- This release adds support for wildcard search (truncation).
- Document types that have delimiters different from whitespace are now supported.
LinkMachine
LinkMachine project helps you build as large a reciprocal link program as youd like. more>>
LinkMachine will help you:
- Climb to the top of the search engines
- Gain quality links to your site today
- Automate your link management
- Uncover exactly how to beat your top competitors
- Attract thousands more targeted visitors to your site
The most effective way to interest webmasters in linking to your site is by offering to exchange reciprocal links. This is a win-win situation - both of your web sites benefit from new targeted, relevant links.
LinkMachine project helps you build as large a reciprocal link program as youd like. Search engines see all of the new links pointing from other quality, relevant sites to your site, and increase your rank. Note that this is very different from using indiscriminate "link farms", which will give you no advantage with the search engines.
Google recently revealed the secrets of its search ranking technology by filing a patent application. What we found out is that Google values organic link building - link building that progresses naturally rather than appearing artificial. LinkMachine is the ideal tool for building link exchanges the way Google likes them.
LinkMachines InstantLinks system and link search tools allow you to grow your link exchanges gradually and gain links from many different sites. And with LinkMachines Alternate Profiles feature, you can easily benefit from having the links to your site use a diverse variety of anchor text.
UNITED-NUKE 4.2.08ms2
UNITED-NUKE is czech content management system which was devided from PHPNuke. more>>
UNITED-NUKE Content Management System was developed with the main goal to make free and open source alternative to PHP-Nuke without well know negative features such as very low speed, bad security and easy to crack authorization scheme, but keep full compatibility so it is possible to use all add-ons (blocks, modules and themes) originally designed for PHP-Nuke. UNITED-NUKE is released under the terms of GNU General Public License.
UNITED-NUKE Content Management System was developed with the main goal to deliver an open source alternative to PHP-Nuke without well know negative features such as very low speed, bad security and easy to crack authorization scheme, but keep full compatibility so it is possible to use all add-ons (blocks, modules and themes) originally designed for PHP-Nuke.
Main features:
- installation and basic setup in a minutes
- automatic database update (if you are upgrading from previous versions)
- MySQL
- DB2
- PostgreSQL
- Microsoft Access (via ODBC)
- Microsoft SQL Server 7/2000
- any MS SQL Server (via ODBC)
- SQLite
- quick response on reported bugs and problems
- possibility to use wizard for update through SLUFU
- updated versions are available to all for free
- low SQL queries to database server per page
- thoroughly used aggregate functions in SQL queries
- save webservers system memory
- user access groups
- extended users profiles
- pre-paid content support
- possibility to share users data between various installations
- advanced advertising system
- content syndication (RSS and Atom)
- extended multi-language content support
- basic visitor statistics
- polls, ranking of stories
- can be used any of thousands add-ons available for PHP-Nuke such as new blocks, modules and themes
- module with special ported phpBB bulletin board (not BBtoNuke) with excellent phpBB MODs compatibility
- support original written WYSIWYG Editors (international versions will be available soon)
- support text to formatted HTML converter Texy!
- support (X)HTML templates
- compliant with HTML 4.01 recommendations from the W3C
- it is not required to know PHP
Terrier 1.1.0
Terrier project is a probabilistic Java toolkit for building search engines. more>>
Terrier is software for the rapid development of Web, intranet, and desktop search engines.
More generally, it is a modular platform for building large-scale information retrieval applications, providing indexing and probabilistic retrieval functionalities.
It comes with a desktop search application.
Terrier has various cutting-edge features including parameter-free probabilistic retrieval approaches (such as Divergence from Randomness models), automatic query expansion/re-formulation methodologies, and efficient data compression techniques.
Terrier comes with a powerful proof-of-concept Desktop search application [Screenshots], and full TREC capabilities including the ability to index, query and evaluate the standard TREC collections, such as AP, WSJ, WT10G, .GOV and .GOV2.
Terrier is written in Java [Requirements] and has been successfully used for adhoc retrieval, Web search and cross-language retrieval, in a centralised or distributed setting.
Currently, it is also being used for running various applications.
Main features:
- Open Source (Mozilla Public Licence)
- Written in cross-platform Java
- Highly compressed disk data structures.
- Handling large-scale document collections.
- Direct file for efficient query expansion.
- Modular and open indexing and querying APIs.
- Testbed for indexing and retrieval from standard TREC test collections.
- Interactive querying application.
- Desktop search application for searching various types of documents.
- Input/output of gamma, unary and binary encoded integers for compressing streams or random access files.
- Standard evaluation of TREC ad-hoc and known-item search retrieval results.
- Indexing of tagged document collections, as well as documents of various formats, such as HTML, PDF, or Microsoft Word, Excel and Powerpoint files.
- Indexing of field information.
- Indexing of position information on a word, or a block level.
- Support for classic retrieval models, such as tf-idf, BM25 and Ponte-Croft language model, and Rocchios query expansion.
- Provides a number of Divergence From Randomness (DFR) document ranking models.
- Provides a number of parameter-free DFR term weighting models for automatic query expansion.
- Advanced query language that supports AND/NOT operators, phrase and proximity search.
- Flexible processing of terms through a pipeline of components, such as stop-words removers and stemmers.
Enhancements:
- This is a major update with improvements in indexing and retrieval functionalities, including faster indexing and retrieval, and new retrieval models (including models from Divergence from Randomness and Language modeling).
- It has support for much larger collections of documents, including TREC GOV2 collections (25M documents), merging of indices, and multi-lingual and non-English collections of documents.
- The documentation has been vastly improved.
Kernel-Machine Library 0.1
Kernel-Machine Library is a C++ library to implement kernel machines. more>>
The Kernel-Machine Library draws heavily from features of modern C++ such as template meta-programming to achieve high performance while at the same time offering a comfortable interface.
It enables compile-time selection of specialised algorithms on the basis of data types: for example, the specific case of a SVM in combination with a linear kernel can be computed by a specialised efficient algorithm.
The Kernel-Machine Library has implementations for the following kernel machines and their cited algorithms:
- Support Vector Machine [1, 2, 3]
- Relevance Vector Machine [4]
- Kernel Recursive Least Squares [5]
- Adaptive Sparseness using Jeffreys Prior [6]
- Smooth Relevance Vector Machine [7]
Up till now, the focus has been on regression. The handling of classification and ranking problems is being added.

Ask and Receive - Reciprocal Links 2.0
full-featured Reciprocal Link management system in PHP more>> Ask and Receive? is a full-featured Reciprocal Link management system intended to be installed on any web site which provides PHP language support.
Ask and Receive? Increases quality traffic to your site with out any cost and without any gimmicks or SPAM. Links to your web site from other sites is the best way to get your web site top listed in search engines. In addition, having outgoing links from your site which link to noteworthy and top listed sites is considered by SEOs (Search Engine Optimizers) as another excellent method to increase your sites ranking. With Ask and Receive? you let visitors automatically add their own links to your site and then approve which links you want to accept. Also, with Ask and Receive? you can add outgoing links directly to your own site, and nudge those site owners to return the favor by linking to you. Ask and Receive? has been designed with enhanced Search Engine Optimization features. This means that the link pages that are set up on your web site will be highly visible to search engines such as Google and will help your overall page rank index and page visibility, and will do so using proper and acceptable methods, considered good-practice by Google and other search engines.
With Ask and Receive? you can wait for visitors to enter their requests for reciprocal links, or you can "nudge" a site by adding a link to them first. This is the "being nice first" feature, and allows you to rapidly add a set of high-caliber out-going links on your site while simultaneously "nudging" those site owners to return the favor by linking back to your site: and Ask and Receive? generates and then emails to these other site owners all the HTML code needed for your link.
Contains over 50 user editable features in the rl_vars.php file. This file can either be edited with a text editor, or, depending on the configuration of your ISPs installation of PHP, can be edited from the Ask and Receive? Admin menu. All source code provided<<less
Aardvark Topsites PHP 5.2.0
Aardvark Topsites PHP is the premier PHP/SQL topsites script. more>>
Main features:
- Members ranks can be shown on their button.
- New: Stat Buttons, allowing you to customize your buttons and display all kinds of stats on them
- 6 different ranking methods
- Counts unique pageviews, total pageviews, unique hits in, total hits in, unique hits out, and total hits out
- New: Rank daily, weekly, or monthly
- Up/down/neutral arrows
- Customizable categories
- Fully customizeable skins: make your topsites look however you want!
- Simple web-based installer and upgrader
- Multiple pages
- Member login and lost password retrieval
- Seamlessly switches between languages
- Fast, integrated search
- Ad breaks
- Visitors can rate and review members
- Advanced stats and graphs
- Easy to install and maintain
- Powerful admin
- New: Mass mail members
- Best of all, its completely free!
Enhancements:
- A tool to backup database was added in the admin interface.
- A more secure captcha, with a link for users to get a new captcha if the user cant read the first one.
- The gateway page for the Fusion skin was redesigned.
- Sites may be banned by URL, IP address, username, or email address.
- An optional security question is asked on join to block spammers.
- By default, new members must be approved by the admin before they are listed, and changes to the title or URL of a site must be approved by the admin.
- A summary of overall statistics is displayed on the main page.
Tournament Pool and Bracket Tracker 0.5.0
Tournament Pool and Bracket Tracker is a Java Servlet based generic game tournament pool bracket tracking application. more>>
Features include bracket entering, multiple scoring systems, multiple users, groups, pools, etc.
Tournament Pool and Bracket Tracker contains everything you need to run a tournament pool.
It supports small groups or organizations who wish to provide an NCAA basketball tournament pool without a lot of administrative work in registering users or in calculating up-to-date results and possibilities.
Though it was built with the NCAA "March Madness" tournaments in mind, it should be able to handle other sport tournament pools that use straight forward brackets.
As an administrator, you will first log into the system like any other user. Any user can create a group and aministrate their own pool. A group is a set of players that play together in any number of pools.
Pool adminstrators can choose from many different scoring systems. Scoring systems can be set up dynamically in the database. When you set up a group, you have a choice. Either you can tell the users about the pool, and have them register, then notify you. You would then add the users to the group manually. This keeps membership totally within your control.
However, you can also create an invitation code. Youll then have an link to the system with that invitation code embedded. You can send this link to your users. When they click the link and login (with a possible detour through registration), they will be automatically added to your group.
They can then create their bracket and add it to a pool without your direct involvement. You do risk that the email gets circulated to others and people you dont intend to enter your group do.
Players can create as many brackets as they like, name them, leave them unfinished, come back to them later, etc. Players can add a bracket to a pool once the bracket is finished either from the bracket interface page or from the pool interface page.
Once a tournament is underway, users can keep track of their progress as the administrator for a tournament updates the results of games. Tournaments results are updated by the administrator with the same interface players use to enter their brackets.
Players are prevented from editing their brackets once it has been added to a pool that has a tournament underway. Tournament administrators can delegate the duty of keeping game results up to date to others if they arent going to be around for some of the games via a simple interface.
This allows players to come into the system regularly during the tournament and check their results and the standings much quicker than your typical spreadsheet based systems. If something is updated wrong, the players will keep you honest. The results show current, remaining, and maximum available points.
Any user can inspect the other players brackets in the pool. The brackets are presented with good picks in the green and bad picks in the red.
Version restrictions:
- Right now, all of the bracket, tournament, and teams setup is done via SQL scripts. I typically am working on the scripts the night they are announced. The priority list for the user interface work so far has been first to make the player experience nice, second to make the in-tournament administration nice, and only third to make the tournament setup nice. Hopefully by the time March 2006 rolls around this third area will be improved.
- At this point the bracket system wont handle highest seed meets lowest seed type of brackets. Unfortunately, this rules out using this system for the NFL Playoffs for the time being. Ive been working on this, but it is hard nut to crack.
Installation:
- Install MySQL and Tomcat
- Put the tournament.war file in the tomcat webapps folder.
- To get the database ready, run the following commands from the mysql.exe tool in the following order:
. [path]configdb.sql
. [path]configncaa.sql
. [path]configncaa-teams.sql
. [path]configncaa-2004.sql (optional)
. [path]configacc.sql (optional)
. [path]configacc-2005.sql (optional)
. [path]configncaa-2005.sql
You need to grant privileges in mysql as well:
GRANT ALL PRIViLEGES ON *.* TO testuser@localhost
IDENTIFIED BY testpw WITH GRANT OPTION;
Make some tweaks to the [tomcat home]/conf/web.xml file. Uncomment the following:
< !-- The invoker servlet -->
< servlet>
< servlet-name>invoker
< servlet-class>
org.apache.catalina.servlets.InvokerServlet
< /servlet-class>
< init-param>
< param-name>debug
< param-value>0
< /init-param>
< load-on-startup>2
< /servlet>
and
< !-- The mapping for the invoker servlet -->
< servlet-mapping>
< servlet-name>invoker
< url-pattern>/servlet/*
< /servlet-mapping>
This enables the autoinvoker servlet, which maps from URLs to class names which happen to be J2EE servlet classes. Some people consider this a security risk, which is why it is disabled by default. Ive never had an issue so long as I know all of the servlet classes I have in the system. This can be changed. If you consider it an issue, let me know via a feature request.
- Start MySQL and Tomcat
- Go to http://localhost:8080/tournament/
Enhancements:
- This release adds many new options for the tournament pool administrator.
- You can do tie breakers, not show the players brackets to each other until the tournament starts, limit the number of brackets per player, and run a pool starting later in a tournament, such as starting at the Sweet 16.
- There is also a new interface for setting the start date and time of the tournament, sorting enhancements, the ability to edit pool settings, ranking the brackets of a running pool, and players may reset their passwords.
iPuissance 4D 6.11
iPuissance 4D is a free (online) Connect 4 style video game: It can be played through the Internet against other real players, or locally against an artificial intelligence. The Connect Four grid is rendered in 3D. It is also possible to see the scores, time left, change the game rules, and even chat with others in the game or in chat room. You can play on-line and chat on the Beroux.com server for free and increase your rank in the high score. more>>
iPuissance 4D - iPuissance 4D is a free multiplayer (local/online) Connect 4 style video game.
The Connect Four game is played with red and yellow counters on a vertical grid of 6x7, closed at the bottom. In turns each player drops a counter of his colour in the column of his choice, until one of them makes a line of 4 counters of his colour, like in Morpion. Easy you think? But its not and if you dont like the classical game rules you can just change them in iPuissance 4D: 10x10 grid, 2 Per Turn, No Fill C...
The Connect 4 grid can be rendered in 3D (three dimensions). The game displays players scores, time left and supports different game rules. You can play locally against a friend without any internet connexion, or you can play online. You can also train yourself by playing against the computer (an artificial intelligence).
Come and play against other players on the net; you can connect to our Beroux.com server and play against some real players for free. The internet players gain points (for the ranking), they can chat together (before and during the game), and you dont even need to register to play on-line. A high score page displays the best players.
Enhancements:
Version 6.05
System Requirements:OpenGL, 700 Mhz computer<<less
Waterstorm Open Beta (Build 1462)
Waterstorm is a fast paced 2D multiplayer shooter. more>>
The waiting has found its ending: Rarebytes newest incarnation, Waterstorm, a fast paced 2D multiplayer shooter, goes beta. Players from around the world can measure up against each other in a sophisticated ranking system and team up as clans.
A massive variety of sub marines and weaponry rock the boat in Waterstorm. Subaqueous battles with jaw-dropping graphics guaranteed and free of charge!
You can dive into the world of Waterstorm using Linux, Mac OS or Windows.
Statistics::ROC 0.04
Statistics::ROC is a Perl module with receiver-operator-characteristic (ROC) curves with nonparametric confidence bounds. more>>
SYNOPSIS
use Statistics::ROC;
my ($y) = loggamma($x);
my ($y) = betain($x, $p, $q, $beta);
my ($y) = Betain($x, $p, $q);
my ($y) = xinbta($p, $q, $beta, $alpha);
my ($y) = Xinbta($p, $q, $alpha);
my (@rk) = rank($type, @r);
my (@ROC) = roc($model_type,$conf,@val_grp);
This program determines the ROC curve and its nonparametric confidence bounds for data categorized into two groups. A ROC curve shows the relationship of probability of false alarm (x-axis) to probability of detection (y-axis) for a certain test. Expressed in medical terms: the probability of a positive test, given no disease to the probability of a positive test, given disease. The ROC curve may be used to determine an optimal cutoff point for the test.
The main function is roc(). The other exported functions are used by roc(), but might be useful for other nonparametric statistical procedures.
loggamma
This procedure evaluates the natural logarithm of gamma(x) for all x>0, accurate to 10 decimal places. Stirlings formula is used for the central polynomial part of the procedure. For x=0 a value of 743.746924740801 will be returned: this is loggamma(9.9999999999E-324).
betain
Computes incomplete beta function ratio
Remarks:
Complete beta function: B(p,q)=gamma(p)*gamma(q)/gamma(p+q)
log(B(p,q))=ln(gamma(p))+ln(gamma(q))-ln(gamma(p+q))
Incomplete beta function ratio:
I_x(p,q)=1/B(p,q) * int_0^x t^{p-1}*(1-t)^{q-1} dt
--> log(B(p,q)) has to be supplied to calculate I_x(p,q)
log denotes the natural logarithm
$beta = log(B(p,q))
$x = x
$p = p
$q = q
The subroutine returns I_x(p,q). If an error occurs a negative value
{-1,-2} is returned.
Betain
Computes the incomplete beta function by calling loggamma() and betain().
xinbta
Computes inverse of incomplete beta function ratio
Remarks:
Complete beta function: B(p,q)=gamma(p)*gamma(q)/gamma(p+q)
log(B(p,q))=ln(gamma(p))+ln(gamma(q))-ln(gamma(p+q))
Incomplete beta function ratio:
alpha = I_x(p,q) = 1/B(p,q) * int_0^x t^{p-1}*(1-t)^{q-1} dt
--> log(B(p,q)) has to be supplied to calculate I_x(p,q)
log denotes the natural logarithm
$beta = log(B(p,q))
$alpha= I_x(p,q)
$p = p
$q = q
The subroutine returns x. If an error occurs a negative value {-1,-2,-3}
is returned.
Xinbta
Computes the inverse of the incomplete beta function by calling loggamma() and xinbta().
rank
Computes the ranks of the values specified as the second argument (an array). Returns a vector of ranks corresponding to the input vector. Different types of ranking are possible (high, low, mean), and are specified as first argument. These differ in the way ties of the input vector, i.e. identical values, are treated:
high:
replace ranks of identical values with their highest rank
low:
replace ranks of identical values with their lowest rank
mean:
replace ranks of identical values with the mean of their ranks
roc
Determines the ROC curve and its nonparametric confidence bounds. The ROC curve shows the relationship of "probability of false alarm" (x-axis) to "probability of detection" (y-axis) for a certain test. Or in medical terms: the "probability of a positive test, given no disease" to the "probability of a positive test, given disease". The ROC curve may be used to determine an "optimal" cutoff point for the test.
The routine takes three arguments:
(1) type of model: decrease or increase, this states the assumption that a higher (increase) value of the data tends to be an indicator of a positive test result or for the model decrease a lower value.
(2) two-sided confidence interval (usually 0.95 is chosen).
(3) the data stored as a list-of-lists: each entry in this list consits of an "value / true group" pair, i.e. value / disease present. Group values are from {0,1}. 0 stands for disease (or signal) not present (prior knowledge) and 1 for disease (or signal) present (prior knowledge). Example: @s=([2, 0], [12.5, 1], [3, 0], [10, 1], [9.5, 0], [9, 1]); Notice the small overlap of the groups. The optimal cutoff point to separate the two groups would be between 9 and 9.5 if the criterion of optimality is to maximize the probability of detection and simultaneously minimize the probability of false alarm.
Returns a list-of-lists with the three curves: @ROC=([@lower_b], [@roc], [@upper_b]) each of the curves is again a list-of-lists with each entry consisting of one (x,y) pair.
Examples:
$,=" ";
print loggamma(10), "n";
print Xinbta(3,4,Betain(.6,3,4)),"n";
@e=(0.7, 0.7, 0.9, 0.6, 1.0, 1.1, 1,.7,.6);
print rank(low,@e),"n";
print rank(high,@e),"n";
print rank(mean,@e),"n";
@var_grp=([1.5,0],[1.4,0],[1.4,0],[1.3,0],[1.2,0],[1,0],[0.8,0],
[1.1,1],[1,1],[1,1],[0.9,1],[0.7,1],[0.7,1],[0.6,1]);
@curves=roc(decrease,0.95,@var_grp);
print "$curves[0][2][0] $curves[0][2][1] n";
- Page: 1 of 2
- 1
- 2