Eine Tabelle für die Häufigkeiten mehrerer Variablen

Fragen und Diskussionen rund um die Arbeit mit SPSS. Für allgemeine Statistik-Themen, die nicht mit SPSS zusammenhängen, bitte das Statistik-Forum nutzen.
Antworten
SPSS_81
Beiträge: 2
Registriert: 30.01.2011, 11:49

Eine Tabelle für die Häufigkeiten mehrerer Variablen

Beitrag von SPSS_81 »

Hallo,

vielleicht kann mir jemand folgende Frage beantworten:

Ich lassen mir die Häufigkeiten mehrerer Variablen in Tabellen ausgeben. Dabei wir für jede Variable eine Tabelle angelegt. Ich hätte aber gerne eine Tabelle die Häufigkeiten mehrerer Variablen. Wie bekomme ich das hin???

Das Thema wurde hier schon mal diskutiert, aber über "Analysieren -> Tabellen" ist mir nicht klar, was genau ich tun muss, um das einzustellen. :oops:

Über schnelle Hilfe würde ich mich sehr freuen.

Vielen Grüße
drfg2008
Beiträge: 2391
Registriert: 06.02.2011, 19:58

Tabelle

Beitrag von drfg2008 »

Schwierig. Fällt mir nur eine Lösung über Script ein. Und das erfordert gute VBA Kenntnisse objektorientierter Programmierung.

Aber wie wär's ganz einfach mit Export über Excel und dann die Spalten löschen, die nicht gefragt sind. Ein wenig Bastelarbeit. Nicht gerade elegant, aber wirksam.

Gruß
drfg2008
SPSS_81
Beiträge: 2
Registriert: 30.01.2011, 11:49

Beitrag von SPSS_81 »

Hallo,

mit Excel versuche ich es mal. Das wird sicher klappen.

Vielleicht würde ich die Lösung über "Skript" (?) hinbekommen, wenn ich eine konkrete Anleitung hätte. Wäre es möglich das etwas genauer zu beschreiben oder ist das zu umständlich zu erklären?

Viele Grüße und Dank
drfg2008
Beiträge: 2391
Registriert: 06.02.2011, 19:58

RE

Beitrag von drfg2008 »

dazu müsste man die genauen Tabellen kennen, und dann wäre das ein Haufen Arbeit. Es ist leider ein Schwachpunkt bei SPSS.

vielleicht liefert Raynalds etwas:

http://www.spsstools.net/


Gruß
drfg2008
Generalist
Beiträge: 1733
Registriert: 11.03.2010, 22:28

Beitrag von Generalist »

Wie sieht es mit dem Menüpunkt Analysieren/"Mehrfachantworten" aus?
drfg2008
Beiträge: 2391
Registriert: 06.02.2011, 19:58

RE

Beitrag von drfg2008 »

dazu müssen die Daten alle dichotom codiert sein

Einfach mal ein SPSS-Buch lesen: am besten Bühl (SPSS)

Hier ein Script, das man anpassen könnte:

'This script creates a new Viewer document with a pivot table inserted
'in it. The cells of the table are populated by the script.
'To run this script, open SPSS And run.


'Script level constants
Const cCOLUMN As String = "Column"
Const cCOLUMNS As String = "Columns"
Const cROW As String = "Row"
Const cROWS As String = "Rows"
Const cLAYER As String = "Layer"
Const cLAYERS As String = "Layers"
Const cNEWTABLE As String = "New table"

Sub Main
Dim objOutputDoc As ISpssOutputDoc
Dim objLabels As ISpssLabels ' Column label arrays
Dim objLayerLabels As ISpssLayerLabels ' Column label arrays
Dim objItems As ISpssItems
Dim objItem As ISpssItem
Dim objPivotTable As PivotTable
Dim objDataCells As ISpssDataCells
Dim objPivMgr As ISpssPivotMgr
Dim objLayerDim As ISpssDimension
Dim index As Long
Dim nRows As Integer
Dim nCols As Integer
Dim nLayers As Integer
Dim intCol As Integer ' Number of columns in label array.
Dim intRow As Integer ' Number of rows in label array
Dim intLay As Integer ' Number of layers in table
Dim intR As Integer ' Loop Counter
Dim intC As Integer ' Loop Counter
Dim intL As Integer ' Loop Counter
Dim nItems As Integer

'Dimensions of new table
nRows = 5
nCols = 4
nLayers = 3

' Create a new Viewer window and make it visible
Set objOutputDoc = objSpssApp.NewOutputDoc
objOutputDoc.Visible = True

' Insert a blank table
index = objOutputDoc.InsertTable( cNEWTABLE, nRows,nCols,nLayers)
Set objItems = objOutputDoc.Items
Set objItem = objItems.GetItem(objItems.Count-1)
Set objPivotTable = objItem.ActivateTable
objPivotTable.UpdateScreen=False

' Set column labels
Set objLabels = objPivotTable.ColumnLabelArray
objLabels.ValueAt(0,0) = cCOLUMNS
intCol = objLabels.NumColumns
For intC = 0 To intCol - 1
objLabels.ValueAt(1,intC) = cCOLUMN & " " & CStr(intC)
Next intC

' Set row labels
Set objLabels = objPivotTable.RowLabelArray
objLabels.ValueAt(0,0) = cROWS
intCol = objLabels.NumColumns
intRow = objLabels.NumRows
For intR = 0 To intRow - 1
objLabels.ValueAt(intR,1) = cROW & " " & CStr(intR)
Next intR

' Get table layer information
Set objLayerLabels = objPivotTable.LayerLabelArray
Set objPivMgr = objPivotTable.PivotManager
Set objLayerDim = objPivMgr.LayerDimension(0)
intLay = objLayerDim.NumCategories

' Set layer dimension name
objLayerDim.DimensionName = cLAYERS

' Walk the layers
For intL = intLay - 1 To 0 Step -1
objLayerDim.CurrentCategory = intL

' Set layer labels
objLayerLabels.ValueAt(0, 2) = cLAYER & " " & CStr(intL)

' Set data
Set objDataCells = objPivotTable.DataCellArray
intCol = objDataCells.NumColumns
intRow = objDataCells.NumRows
For intC = 0 To intCol - 1
For intR = 0 To intRow - 1
objDataCells.ValueAt(intR,intC) = Str(intL*100 + intC*10 + intR)
Next intR
Next intC
Next intL

objPivotTable.UpdateScreen=True
objItem.Deactivate

End Sub
drfg2008
Generalist
Beiträge: 1733
Registriert: 11.03.2010, 22:28

Re: RE

Beitrag von Generalist »

dazu müssen die Daten alle dichotom codiert sein
Naja, das stimmt ja nicht.
drfg2008
Beiträge: 2391
Registriert: 06.02.2011, 19:58

RE

Beitrag von drfg2008 »

Stimmt, es gibt die Möglichkeit Dichotomien und Kategorien im Menübefehl "Mehrfachantworten - Set definieren".

Aber nutzen Mehrfachantworten hier?
drfg2008
Generalist
Beiträge: 1733
Registriert: 11.03.2010, 22:28

Beitrag von Generalist »

Das weiß ich nicht. Es ging ja an den ursprünglichen Fragesteller, der muß das beurteilen. Sein Anliegen habe ich nicht eindeutig verstehen können.
Anzeige:Statistik und SPSS: Die besten Bücher
Als Buch oder E-Book - Jetzt bestellen
spss datenanalyse
SPSS - Moderne Datenanalyse - Jetzt bestellen!
statistik datenanalyse
Statistik - Der Weg zur Datenanalyse - Jetzt bestellen!
Antworten