我的数据看起来像这样
a b c
1 1 0
1 2 8
2 1 0
2 2 2
3 1 3
3 2 3
4 1 7
4 2 4
5 1 3
5 2 5
6 1 1
6 2 8
7 1 1
7 2 2
Run Code Online (Sandbox Code Playgroud)
我想对列进行排序a,c以便列中的每个偶数行c都是列a中每对的最大数字.然后我想获取这些值并将它们存储在一个新对象中.看起来应该是这样的.
a c b
1 8 2
2 2 2
3 3 2
4 7 1
5 5 2
6 8 2
7 2 2
Run Code Online (Sandbox Code Playgroud) 我完全迷失了使用ggplot.我尝试过各种解决方案,但都没有成功.使用下面的数字,我想创建一个折线图,其中三条线代表df $ c,df $ d和df $ e,x轴代表df $ a,y轴代表累积概率95 = 100%.
a b c d e
1 0 18 0.047368421 0.036842105 0.005263158
2 1 20 0.047368421 0.036842105 0.010526316
13 2 26 0.052631579 0.031578947 0.026315789
20 3 35 0.084210526 0.036842105 0.031578947
22 4 41 0.068421053 0.052631579 0.047368421
24 5 88 0.131578947 0.068421053 0.131578947
26 7 90 0.131578947 0.068421053 0.136842105
27 8 93 0.126315789 0.068421053 0.147368421
28 9 96 0.126315789 0.073684211 0.152631579
3 10 115 0.105263158 0.078947368 0.210526316
4 11 116 0.105263158 …Run Code Online (Sandbox Code Playgroud) 我希望标题不会太混乱......
基本上,我有两个向量,每个向量都是n长度.我想将这两个向量转换为*n矩阵(即包含2个数字的2个向量,每个向量变为2*2矩阵),其中矩阵中的每个位置是两个向量的每个位置的中值.
例如:
a<-as.vector(1,5)
b<-as.vector(1,5)
Run Code Online (Sandbox Code Playgroud)
使用outer()给我一个2*2矩阵
1 5
1
5
Run Code Online (Sandbox Code Playgroud)
但是,如何使用每个唯一组合之间的中间值填充空矩阵?答案应该是这样的:
1 3
3 5
Run Code Online (Sandbox Code Playgroud) 我想将填充字符串的列转换为分类变量,以便我可以运行统计数据。然而,我在这种转换方面遇到了困难,因为我对 Python 还很陌生。
这是我的代码示例:
# Open txt file and provide column names
data = pd.read_csv('sample.txt', sep="\t", header = None,
names = ["Label", "I1", "I2", "C1", "C2"])
# Convert I1 and I2 to continuous, numeric variables
data = data.apply(lambda x: pd.to_numeric(x, errors='ignore'))
# Convert Label, C1, and C2 to categorical variables
data["Label"] = pd.factorize(data.Label)[0]
data["C1"] = pd.factorize(data.C1)[0]
data["C2"] = pd.factorize(data.C2)[0]
# Split the predictors into training/testing sets
predictors = data.drop('Label', 1)
msk = np.random.rand(len(predictors)) < 0.8
predictors_train = predictors[msk]
predictors_test = …Run Code Online (Sandbox Code Playgroud) 我喜欢从数据框列表中的每个数据框中报告特定列。有任何想法吗?这是我的代码:
# Create dissimilarity matrix
df.diss<-dist(t(df[,6:11]))
mds.table<-list() # empty list of values
for(i in 1:6){ # For Loop to iterate over a command in a function
a<-mds(pk.diss,ndim=i, type="ratio", verbose=TRUE,itmax=1000)
mds.table[[i]]<-a # Store output in empty list
}
Run Code Online (Sandbox Code Playgroud)
现在这是我遇到麻烦的地方。存储值后,我无法从列表中的每个数据框中调用特定列。
# This function should call every $stress column from each data frame.
lapply(mds.table, function(x){
mds.table[[x]]$stress
})
Run Code Online (Sandbox Code Playgroud)
再次感谢!
标题非常简单 - 如何计算每行的最大值和最小值之间的差异?
我们假设这是我的数据:
a b c d
1 2 3 4
0 3 6 9
3 2 1 4
9 8 7 6
Run Code Online (Sandbox Code Playgroud)
对于每一行,我想找到具有最高值的列与具有最低值的列之间的差异 - 结果如下所示:
3
9
3
3
Run Code Online (Sandbox Code Playgroud)
任何帮助是极大的赞赏!
我正在寻找一种简短有效的方法来对因子的每个级别运行单独的方差分析。我认为,我目前拥有的东西是多余的,而且会弄乱工作空间。假设我有以下内容:
Letter Number Question
A 1 1
A 2 1
A 3 1
B 1 1
B 2 1
B 3 1
C 1 1
C 2 1
C 3 1
Run Code Online (Sandbox Code Playgroud)
我可以运行以下代码将数据帧拆分为子集 A、B 和 C:
> list2env(split(data, data$Letter), globalenv())
> ANOVA.A <- aov(Question~Number, data=A)
> ANOVA.B <- aov(Question~Number, data=B)
> ANOVA.C <- aov(Question~Number, data=C)
Run Code Online (Sandbox Code Playgroud)
虽然这为我提供了所需的结果,但它使工作区变得混乱。我的实际数据集要大得多,所以我正在寻找更简单、更优雅的东西。
我无法运行这个双循环来将计算值正确存储到矩阵中(如下所述).我选择使用双For循环而不是apply()或mean()的原因是我想获得两列的唯一组合并消除冗余(如下所述).请参阅下面的示例:
A<-c(1,2,3,4,5)
B<-c(2,3,4,5,6)
Q1<-data.frame(cbind(A,B))
mean<-matrix(nrow=5, ncol = 5)
for(i in 1: length(Q1$A)){
for(j in 2: length(Q1$B)){
mean[i,j]<-sum(Q1$A[i]+Q1$B[j])/2
}
}
Run Code Online (Sandbox Code Playgroud)
在这里,我尝试通过整个B向量运行整个A向量,同时消除冗余,使得A [1]具有来自B [2]的四个值,并且A [2]具有来自B [3]的三个值.但是,这是我的结果.
[,1] [,2] [,3] [,4] [,5]
[1,] NA 2.0 2.5 3.0 3.5
[2,] NA 2.5 3.0 3.5 4.0
[3,] NA 3.0 3.5 4.0 4.5
[4,] NA 3.5 4.0 4.5 5.0
[5,] NA 4.0 4.5 5.0 5.5
Run Code Online (Sandbox Code Playgroud)
虽然第一列是我的预期,但我有我不想要的价值观.我想要的是以下矩阵输出:
[,1] [,2] [,3] [,4] [,5]
[1,] NA 2.0 2.5 3.0 3.5
[2,] NA NA 3.0 3.5 4.0
[3,] NA NA …Run Code Online (Sandbox Code Playgroud) 我试图在网站上寻找解决方案,但重塑数据仍然困扰着我.我希望有人可以帮忙!:)基本上,我的数据看起来像这样:
Item Condition1 Condition2 Condition3
A 1 2 3
B 1 2 3
C 1 2 3
D 1 2 3
Run Code Online (Sandbox Code Playgroud)
我希望它看起来像这样
Item Condition
A 1
A 2
A 3
B 1
B 2
B 3
C 1
C 2
C 3
D 1
D 2
D 3
Run Code Online (Sandbox Code Playgroud)
根据我的理解,似乎有可能以不止一种方式做到这一点,但我还没有找到一个有效的方法!