X-Git-Url: http://iramuteq.org/git?p=iramuteq;a=blobdiff_plain;f=tabfrequence.py;h=328e61071fd2ad26e57c03b6293fc839df9ab83a;hp=563e5b418405bbbd2e91ef8aaa57c3769e6d3b24;hb=238d461ff111b1bc3302494de4d9b630f9e9f623;hpb=6919f2ef8d85c176c7be824b606c4b71142e10fd diff --git a/tabfrequence.py b/tabfrequence.py index 563e5b4..328e610 100644 --- a/tabfrequence.py +++ b/tabfrequence.py @@ -20,12 +20,13 @@ class Frequences(AnalyseMatrix) : if dlg is None : return else : - dial = FreqDialog(self.parent, -1, self.tableau.get_colnames(), u"Fréquences", size=(350, 200)) + dial = FreqDialog(self.parent, self.tableau.get_colnames(), u"Fréquences") dial.CenterOnParent() val = dial.ShowModal() if val == wx.ID_OK : - self.parametres['colsel'] = dial.list_box_1.GetSelections() + self.parametres['colsel'] = dial.m_listBox1.GetSelections() self.parametres['header'] = dial.header + self.parametres['NA'] = dial.includeNA.GetValue() else : self.parametres = None dial.Destroy() @@ -55,12 +56,26 @@ class Frequences(AnalyseMatrix) : compteur <- 1 """ % (sel, listfiles, titles) + if self.parametres['NA'] : + txt += """ + countNA <- TRUE + """ + else : + txt += """ + countNA <- FALSE + """ + txt += """ for (i in select) { - freq <- table(dm[,i]) + if (countNA) { + freq <- table(dm[,i], useNA = 'ifany') + } else { + freq <- table(dm[,i]) + } sumfreq <- sum(freq) pour <- prop.table(as.matrix(freq), 2) * 100 sumpour <- sum(pour) + pour <- round(pour, 2) ntable <- cbind(as.matrix(freq), pour) graphout <- listfiles[compteur] if (Sys.info()["sysname"]=='Darwin') { @@ -102,16 +117,21 @@ class Frequences(AnalyseMatrix) : content = f.read().splitlines() content.pop(0) content.pop(0) + content = ['\t'.join(line.split('\t')[1:]).replace('"','') for line in content] + content = '\n'.join(content) + content = content.split(u'***\t****\t****') + content = [[line.split('\t') for line in tab.splitlines() if line.split('\t') != ['']] for tab in content] + listtab = [tab for tab in content if tab != []] texte = '' - for ligne in content: - ligne = ligne.replace('"', '') - ligne = ligne.split('\t') - if ligne[1] == u'***' : - if tab != []: - listtab.append(tab) - tab = [] - else : - tab.append(ligne) + #for ligne in content: + # ligne = ligne.replace('"', '') + # ligne = ligne.split('\t') + # if ligne[1] == u'***' : + # if tab != []: + # listtab.append(tab) + # tab = [] + # else : + # tab.append(ligne) pretexte = u''' \n

Fréquences

@@ -128,7 +148,7 @@ class Frequences(AnalyseMatrix) : texte += '' texte += """ %s%s%s %% - """ % (line[3], line[1], line[2]) + """ % (line[2], line[0], line[1]) texte += '' texte += '' texte += """