2013-05-03 1 views
0

У меня есть данные об экзаменационных результатах на 2 года для нескольких студентов. У меня есть столбец с годом, имя ученика и знак. Некоторые студенты не появляются в год 2, потому что они не сдают экзамены на второй год. Я хочу показать, сохраняется ли производительность учащихся или существует ли какая-либо модель в их последующей работе. Я могу разделить данные на две половины одинакового размера, чтобы учитывать отметки «первая половина» и «вторая половина». Я также могу разделить первую половину на квинтили в соответствии с результатами экзамена, используя «proc rank»Таблица непредвиденных расходов в SAS

Я знаю, что результат, который я хочу, представляет собой таблицу 5 X 5, которая имеет исходные 5 квинтилей на одной оси и 5 последующих квинтилей плюс а также «выбывшая» категория, поэтому матрица 5 х 6. На первом экзамене, очевидно, будет около 20% от общего числа студентов в каждом квинтиле, а если нет отношений, то в каждой из 6 категорий предметов потребления должно быть 16,67%. Но я не знаю, как продолжить, чтобы показать, не имеет ли это случая не с этими данными.

Как я могу это сделать в SAS, пожалуйста? Может ли кто-нибудь указать мне на хороший учебник, который бы показал, как это настроить? Я искал такие термины, как «постоянство производительности» и т. Д., Но безрезультатно. , ,

Я так продолжал настраивать свой набор данных. Я добавил столбец с 0 или 1 для первой или второй половины данных, используя первую процедуру ниже. Я также добавил столбец с рангом квинтиля в терминах меток для всех учащихся. Но я думаю, что я ошибался. Разве я не разделяю данные на квинтили в каждой половине, а не на все два периода?

Proc rank groups=2; 
     var yearquarter; 
ranks ExamRank; 
run; 

Proc rank groups=5; 
     var percentageResult; 
     ranks PerformanceRank; 
run; 

Заранее спасибо.

+0

Base SAS или SAS/IML? – Joe

+0

Основы SAS: Я не уверен. Версия командной строки. – user2146441

+0

Оба могут быть отредактированы одинаково. SAS/IML - это матричный язык (так, например, R). База SAS имеет наборы данных, но не матрицы. – Joe

ответ

0

Вот довольно простой пример простой табуляции. Я переношу ваши данные квинтили, а затем создаю таблицу. Здесь нет отношения вообще, за исключением того, что я разрешаю только 5% DNF, поэтому у вас больше 19% 19% 19% 19% 19% 5%.

data have; 
do i = 1 to 10000; 
    do year = 1 to 2; 
    if year=2 and ranuni(7) < 0.05 then call missing(quintile); 
    else quintile = ceil(5*ranuni(7)); 
    output; 
    end; 
end; 
run; 

proc transpose data=have prefix=year out=have_t; 
by i; 
var quintile; 
id year; 
run; 


proc tabulate data=have_t missing; 
class year1 year2; 
tables year1,year2*rowpctn; 
run; 

PROC-корреспондент может быть полезным для анализа, хотя это не выглядит, как это делает именно то, что вы хотите.

proc corresp data=have_t outc=want outf=want2 missing; 
tables year1,year2; 
run; 
+0

Спасибо за ответ. Что это такое в любом случае? Это кросс-табуляция, таблица непредвиденных обстоятельств или что это такое? Мне нужно больше узнать об этом, чтобы продлить анализ. – user2146441

+0

Моя таблица - кросс-табуляция, но это кросс-табуляция, которая является таблицей непредвиденных ситуаций. Что касается вашего анализа, я не уверен; вы, конечно, создаете таблицу непредвиденных обстоятельств, но то, что вы действительно хотите проанализировать, я не уверен. Вы можете спросить либо в статистике stackexchange, либо запросить у SAS Listserv ([email protected]), чтобы получить более подробные статистические рекомендации. – Joe

1

Почему вы делите данные на квинтили?

я оставил бы оценки, как они есть, а затем сделать с разбросом

PROC SGPLOT data = dataset; 
x = year1; 
y = year2; 
loess x = year1 y = year2; 
run; 

 Смежные вопросы

  • Нет связанных вопросов^_^