我在理解R的子集a时使用符号的原因和行为方面遇到困难。以下示例在我正在参加的初学者课堂中提出(由于没有现场教授,所以不能在那里提问):$
data.frame
temp_mat <- matrix(1:9, nrow=3)
colnames(temp_mat) <- c('a', 'b', 'c')
temp_df <- data.frame(temp_mat)
Run Code Online (Sandbox Code Playgroud)
temp_df
明显调用输出:
a b c
1 1 4 7
2 2 5 8
3 3 6 9
Run Code Online (Sandbox Code Playgroud)
本课程中给出的示例如下:
temp_df[temp_df$c < 10]
Run Code Online (Sandbox Code Playgroud)
哪个输出:
a b c
1 1 4 7
2 2 5 8
3 3 6 9
Run Code Online (Sandbox Code Playgroud)
使用原因的问题:该过程表明$
用于部分匹配,并且x$y
是的完全替代x[["y", exact=FALSE]]
。我们为什么要在这里使用部分匹配运算符?我们是否使用它是因为我们确定在我们的temp_df
列中没有其他类似“ c”的列会被错误地选中?另外,如何测量部分匹配?至少有%个字符匹配或类似?看来getElement
,如果要处理具有未知或相似列名的数据集(例如,家用电话与手机,是否将这些视为有效的部分匹配?),该功能会更合适。
行为问题:上面的示例似乎temp_df[temp_df$c < 10]
说“从temp_df返回元素的子集,其中c列小于10”,并且由于所有c列元素均符合条件,因此将返回整个数据帧。我的解释显然是错误的,因为temp_df[temp_df$c < …
我有一个pandas
DataFrame
并且正在使用该DataFrame.to_html
方法生成一个表格,我可以在 HTML 电子邮件中发送。我只是希望某些列中的值居中,但也想知道一般如何将格式应用于表格。我曾尝试应用此处找到的文档以及在使用df.style
之前使用,to_html
如下所示:
df.style.set_properties(**{'text-align':'center'})
Run Code Online (Sandbox Code Playgroud)
但我仍然让我的所有值左对齐(除了标题,它们居中)。
将所有列值(或子集)居中的正确方法是什么,还有哪些其他可用于格式化的选项?(例如加粗文本、更改背景或边框颜色等)
此外,应该在什么阶段应用这种格式?在to_html
我尝试使用的方法内或之前df.style
?谢谢!