R语言中的嵌套for循环
我有这段代码,可以使用余弦相似性计算数据帧中的重复,通过first:first loop(nrow)每次接收一条tweet的次数,然后将余弦相似性结果与使用第二个loop的其他tweet进行比较 这是我的密码:R语言中的嵌套for循环,r,twitter,sentiment-analysis,R,Twitter,Sentiment Analysis,我有这段代码,可以使用余弦相似性计算数据帧中的重复,通过first:first loop(nrow)每次接收一条tweet的次数,然后将余弦相似性结果与使用第二个loop的其他tweet进行比较 这是我的密码: for (i in 1:nrow(temp)) { dup=0 one_Tweets = tweets$Tweet[i] cos_similarity = data.frame("v1"=NULL) # NULL So that don't write previous va
for (i in 1:nrow(temp)) {
dup=0
one_Tweets = tweets$Tweet[i]
cos_similarity = data.frame("v1"=NULL) # NULL So that don't write previous value
cos_similarity=data.frame(sim <- round( sim.strings(AllTweets,one_Tweets), digits = 3) )
names(cos_similarity) = c( "v1")
for (b in i+1:nrow(temp)) {
Tweet_cos=cos_similarity$v1[b]
if ( Tweet_cos >= 0.900) {
count = count+1
tweets$flag[b]= 1
}else { #if ( Tweet_cos <0.900) {
tweets$flag[b]= 2
}
Tweet_cos=0
}
dup=tweets$duplicate[i]= tweets$duplicate[i]+count
count = 0
}
我还没有代表把它放在评论,但我认为你得到这个问题,因为NA/NULL在Tweet_cos向量。要调试,请从代码中删除此部分:
for (b in i+1:nrow(temp)) {
Tweet_cos=cos_similarity$v1[b]
if ( Tweet_cos >= 0.900) {
count = count+1
tweets$flag[b]= 1
}else { #if ( Tweet_cos <0.900) {
tweets$flag[b]= 2
}
Tweet_cos=0
}
dup=tweets$duplicate[i]= tweets$duplicate[i]+count
count = 0
用于(i+1中的b:nrow(温度)){
Tweet\u cos=cos\u相似性$v1[b]
如果(Tweet_cos>=0.900){
计数=计数+1
tweets$flag[b]=1
}else{#if(Tweet_cos我还没有rep将其放在评论中,但我认为您遇到了这个问题,因为Tweet_cos向量中的NA/NULL。要调试,请从代码中删除此部分:
for (b in i+1:nrow(temp)) {
Tweet_cos=cos_similarity$v1[b]
if ( Tweet_cos >= 0.900) {
count = count+1
tweets$flag[b]= 1
}else { #if ( Tweet_cos <0.900) {
tweets$flag[b]= 2
}
Tweet_cos=0
}
dup=tweets$duplicate[i]= tweets$duplicate[i]+count
count = 0
用于(i+1中的b:nrow(温度)){
Tweet\u cos=cos\u相似性$v1[b]
如果(Tweet_cos>=0.900){
计数=计数+1
tweets$flag[b]=1
}否则{#如果(Tweet#cos)尝试summary(temp)
查看Tweet#cosin环境Tweet#cos value=NA#real#中是否有NA
值,使用summary(temp)后我会看到值查看结果:summary(Tweet#cos)最小第一个曲中位数平均第三个曲中位数最大NA NA NA NA NA NA NA NA NA 1
注意一个事实,即i+1:nrow(temp)
与(i+1):nrow(temp)
i在k=i+1
之外添加了循环,然后我为(k:nrow(temp))编写了循环条件
此解决循环问题尝试summary(temp)
查看Tweet\u cosin环境Tweet\u cos value=NA\u real\u中是否有NA值,使用summary(temp)后我看到值请查看结果:summary(Tweet\u cos)最小第一个曲中位数平均第三个曲中位数最大NA NA NA NA NA NA NA NA NA 1
注意一个事实,即i+1:nrow(temp)
与(i+1):nrow(temp)
i在k=i+1
之外添加了循环,然后我为(k:nrow(temp))编写了循环条件
此解决循环问题我删除此部分并打印cos_相似度$V1..结果:[2205]0.489 0.615 0.699 0.649 0.616 0.757 0.603 0.666 0.669 0.616 0.716 0.658 0.649 0.682 0.740 0.578 0.696 0.661 0.719[2224]0.737 0.734 0.631 0.724 0.721 0.690 0.544 0.645 0.617 0.618 0.586 0.600 0.539 0.594 0.716 0.637 0.674 0.699 0.582
我删除此部分并打印cos_相似性$V1..结果:[2205]0.489 0.615 0.615 0.699 0.649 0.616 0.757 0.603 0.666 0.669 0.616 0.716 0.658 0.680.620.710.620.719[2205]0.737 0.734 0.631 0.724 0.721 0.690 0.544 0.645 0.617 0.618 0.586 0.600 0.539 0.594 0.716 0.637 0.674 0.699 0.582