version 1.108, 2003/10/30 16:20:18
|
version 1.109, 2003/12/09 21:14:23
|
Line 73 and/or itself.
|
Line 73 and/or itself.
|
|
|
=item &get_sequence_assessment_data() |
=item &get_sequence_assessment_data() |
|
|
AT THIS TIME THE USE OF THIS FUNCTION IS *NOT* RECOMMENDED |
|
|
|
Use lonnavmaps to build a data structure describing the order and |
Use lonnavmaps to build a data structure describing the order and |
assessment contents of each sequence in the current course. |
assessment contents of each sequence in the current course. |
|
|
Line 1889 sub get_problem_statistics {
|
Line 1887 sub get_problem_statistics {
|
my $dbh = &Apache::lonmysql::get_dbh(); |
my $dbh = &Apache::lonmysql::get_dbh(); |
return undef if (! defined($dbh)); |
return undef if (! defined($dbh)); |
# |
# |
# A) Number of Students attempting problem |
|
# B) Total number of tries of students attempting problem |
|
# C) Mod (largest number of tries for solving the problem) |
|
# D) Mean (average number of tries for solving the problem) |
|
# E) Number of students to solve the problem |
|
# F) Number of students to solve the problem by override |
|
# G) Number of students unable to solve the problem |
|
# H) Degree of difficulty : 1-(E+F)/B |
|
# I) Standard deviation of number of tries |
|
# J) Skew of tries: sqrt(sum(Xi-D)^3)/A |
|
# |
|
$dbh->do('DROP TABLE '.$stats_table); # May return an error |
$dbh->do('DROP TABLE '.$stats_table); # May return an error |
my $request = |
my $request = |
'CREATE TEMPORARY TABLE '.$stats_table. |
'CREATE TEMPORARY TABLE '.$stats_table. |
' SELECT student_id,solved,award,tries FROM '.$performance_table. |
' SELECT student_id,solved,award,awarded,tries FROM '.$performance_table. |
' WHERE symb_id='.$symb_id.' AND part_id='.$part_id; |
' WHERE symb_id='.$symb_id.' AND part_id='.$part_id; |
if (defined($students)) { |
if (defined($students)) { |
$request .= ' AND ('. |
$request .= ' AND ('. |
Line 1915 sub get_problem_statistics {
|
Line 1902 sub get_problem_statistics {
|
} |
} |
# &Apache::lonnet::logthis($request); |
# &Apache::lonnet::logthis($request); |
$dbh->do($request); |
$dbh->do($request); |
|
# &Apache::lonnet::logthis('request = '.$/.$request); |
|
$request = 'SELECT COUNT(*),SUM(tries),MAX(tries),AVG(tries),STD(tries) '. |
|
'FROM '.$stats_table; |
my ($num,$tries,$mod,$mean,$STD) = &execute_SQL_request |
my ($num,$tries,$mod,$mean,$STD) = &execute_SQL_request |
($dbh, |
($dbh,$request); |
'SELECT COUNT(*),SUM(tries),MAX(tries),AVG(tries),STD(tries) FROM '. |
# &Apache::lonnet::logthis('request = '.$/.$request); |
$stats_table); |
$request = 'SELECT SUM(awarded) FROM '.$stats_table; |
my ($Solved) = &execute_SQL_request($dbh,'SELECT COUNT(tries) FROM '. |
my ($Solved) = &execute_SQL_request($dbh,$request); |
$stats_table. |
# &Apache::lonnet::logthis('request = '.$/.$request); |
" WHERE solved='correct_by_student' OR solved='correct_by_scantron'"); |
$request = 'SELECT SUM(awarded) FROM '.$stats_table. |
my ($solved) = &execute_SQL_request($dbh,'SELECT COUNT(tries) FROM '. |
" WHERE solved='correct_by_override'"; |
$stats_table. |
# &Apache::lonnet::logthis('request = '.$/.$request); |
" WHERE solved='correct_by_override'"); |
my ($solved) = &execute_SQL_request($dbh,$request); |
|
# $Solved = int($Solved); |
|
# $solved = int($solved); |
|
# |
$num = 0 if (! defined($num)); |
$num = 0 if (! defined($num)); |
$tries = 0 if (! defined($tries)); |
$tries = 0 if (! defined($tries)); |
$mod = 0 if (! defined($mod)); |
$mod = 0 if (! defined($mod)); |
Line 1944 sub get_problem_statistics {
|
Line 1937 sub get_problem_statistics {
|
$wrongpercent=int(10*100*($num-$Solved+$solved)/$num)/10; |
$wrongpercent=int(10*100*($num-$Solved+$solved)/$num)/10; |
} |
} |
# |
# |
$dbh->do('DROP TABLE '.$stats_table); # May return an error |
# $dbh->do('DROP TABLE '.$stats_table); # May return an error |
# |
# |
# Store in metadata |
# Store in metadata |
# |
# |