小编Pag*_*Max的帖子

R MarkDown和R NoteBook之间的区别

我试图在高层次上理解R Markdown和之间的区别R NoteBook.我知道它们是相互关联的,但我想弄清楚它们是如何相关的.我的理解是这样的:

我知道RNotebooks真的是R Markdown文档,但我对术语感到困惑.

RStudio新文件选项有R Markdown和,R NoteBook并且选择其中任何一个打开R Markdown文件但有细微差别.所以只是想弄清楚为什么有两种选择,两者之间有什么区别?

在此输入图像描述

我知道R笔记本是新推出的,R Makrdown已经存在了一段时间.部分混乱可能是因为我R Markdown在引入R Notebook之前从未使用过,所以我的相关或更具体的问题是

什么是R NoteBook不同于仅使用R MarkDown或R NoteBook带来了哪些新功能?

我在网络搜索上的所有点击都指出R笔记本使用R Markdown但我没有找到任何帮助,两者之间的具体差异.

r rstudio knitr r-markdown rnotebook

107
推荐指数
6
解决办法
3万
查看次数

在谷歌colab中读取csv到dataframe

我正在尝试读取我在本机上存储的csv文件.(只为额外的参考是从Kaggle泰坦尼克号的数据是在这里.)

这个问题和答案我了解到你可以使用这个代码导入数据,这对我很有用.

from google.colab import files
uploaded = files.upload()
Run Code Online (Sandbox Code Playgroud)

丢失的地方是如何从这里将其转换为数据帧.上面答案中列出的示例谷歌笔记本页面没有谈到它.

我试图uploaded使用from_dict命令将字典转换为数据帧,但无法使其工作.有上转换字典内数据帧的一些讨论,在这里,但解决方案并不适用于我(我认为).

总结一下,我的问题是:

How do I convert a csv file stored locally on my files to pandas 
datframe on google-colaboratory?
Run Code Online (Sandbox Code Playgroud)

python csv dataframe google-colaboratory

21
推荐指数
5
解决办法
4万
查看次数

如何一次从熊猫的所有列中删除逗号

我有一个数据框,其中所有列都应该是数字。在阅读时,其中一些是用逗号阅读的。我知道可以通过以下方式修复单个列

df['x']=df['x'].str.replace(',','')
Run Code Online (Sandbox Code Playgroud)

但是,这仅适用于系列对象,不适用于整个数据框。是否有一种优雅的方法将其应用于整个数据帧,因为数据帧中的每个条目都应该是一个数字。

PS:为了确保我可以 str.replace,我首先通过使用将数据帧转换为 str

df.astype('str')
Run Code Online (Sandbox Code Playgroud)

所以我明白,一旦删除逗号,我将不得不将它们全部转换为数字。

python string replace comma pandas

14
推荐指数
1
解决办法
3万
查看次数

BeautifulSoup 有多个标签,每个标签都有一个特定的类

我正在尝试使用 beautifulsoup 来解析网站上的表格。(我无法分享网站源代码,因为它被限制使用。)

仅当数据具有以下两个具有这些特定类的标签时,我才尝试提取数据。

td, width=40%
tr, valign=top
Run Code Online (Sandbox Code Playgroud)

我这样做的原因是提取具有这些标签和类的数据。

我在这里找到了一些关于使用多个标签的讨论,但这个讨论只讨论了标签而不是类。但是,我确实尝试使用与使用列表相同的逻辑来扩展代码,但我认为我得到的不是我想要的:

 my_soup=soup.find_all(['td',{"width":"40%"},'tr',{'valign':'top'}])
Run Code Online (Sandbox Code Playgroud)

总而言之,我的查询是如何使用多个标签,每个标签在 find_all 中都有一个特定的类,以便结果“和”两个标签。

html python tags beautifulsoup findall

9
推荐指数
2
解决办法
5336
查看次数

打印类别列表作为列

我正在以熊猫文档为例.让我们说在阅读excel文件后我有一个系列

import pandas as pd
s = pd.Series(["a","b","c","a"], dtype="category")
Run Code Online (Sandbox Code Playgroud)

我知道我可以得到不同的类别

scat=s.cat.categories
print scat
Run Code Online (Sandbox Code Playgroud)

我得到了

Index([u'a', u'b', u'c'], dtype='object')
Run Code Online (Sandbox Code Playgroud)

我想知道什么是使这个列表显示为列的好方法.就像是

a
b
c
Run Code Online (Sandbox Code Playgroud)

我可以u'通过这样做摆脱,np.asarray但仍然没有得到我需要的格式.

python list series categories pandas

4
推荐指数
2
解决办法
8814
查看次数

Python:在条形图中绘制百分比

对于数据框

import pandas as pd
df=pd.DataFrame({'group':list("AADABCBCCCD"),'Values':[1,0,1,0,1,0,0,1,0,1,0]})
Run Code Online (Sandbox Code Playgroud)

我试图绘制一个显示时间百分比A, B, C, D为零(或一个)的条形图。

我有一个可行的方法,但我认为必须有更直接的方法

tempdf=df.groupby(['group','Values']).Values.count().unstack().fillna(0)
tempdf['total']=df['group'].value_counts()
tempdf['percent']=tempdf[0]/tempdf['total']*100

tempdf.reset_index(inplace=True)
print tempdf

sns.barplot(x='group',y='percent',data=tempdf)
Run Code Online (Sandbox Code Playgroud)

如果仅绘制平均值,我可以sns.barplotdf数据框上比tempdf 做更多。如果我对绘制百分比感兴趣,我不确定如何优雅地做到这一点。

谢谢,

python bar-chart pandas seaborn

2
推荐指数
3
解决办法
2万
查看次数

string.contains中的“和”运算符

我有一个熊猫系列,其中我以这种方式应用字符串搜索

df['column_name'].str.contains('test1')
Run Code Online (Sandbox Code Playgroud)

这给出了对/错列表,取决于是否在列“ column_name”中包含字符串“ test1”。

但是,我无法在需要检查两个字符串是否存在的地方测试两个字符串。就像是

  df['column_name'].str.contains('test1' and 'test2')
Run Code Online (Sandbox Code Playgroud)

这似乎不起作用。任何建议都很好。

python string series pandas

1
推荐指数
1
解决办法
666
查看次数

python制表混淆矩阵

在我的 sklearn 逻辑回归模型中,我使用metrics.confusion_matrix命令获得了一个混淆矩阵。数组看起来像这样

array([[51,  0],
   [26,  0]])
Run Code Online (Sandbox Code Playgroud)

忽略模型做得很糟糕的事实,我试图了解以漂亮的方式制表此矩阵的最佳方法是什么

我正在尝试使用tabulate 包,此代码部分适用于我

print tabulate(cm,headers=['Pred True', 'Pred False']) 
Run Code Online (Sandbox Code Playgroud)

因为它给出了输出

  Pred True    Pred False
-----------  ------------
     51             0
     26             0
Run Code Online (Sandbox Code Playgroud)

编辑

要插入行名称,我意识到插入元素而不是 zip 会有所帮助

cm_list=cm.tolist()
cm_list[0].insert(0,'Real True')
cm_list[1].insert(0,'Real False')
print tabulate(cm_list,headers=['Real/Pred','Pred True', 'Pred False'])
Run Code Online (Sandbox Code Playgroud)

因为它给

Real/Pred      Pred True    Pred False
-----------  -----------  ------------
Real True             51             0
Real False            26             0
Run Code Online (Sandbox Code Playgroud)

但是,仍然想知道是否有更快或替代的美化混淆矩阵的方法。(我在网上找到了一些绘图示例,但我不需要那个)

谢谢,

python tabular confusion-matrix scikit-learn

0
推荐指数
1
解决办法
3267
查看次数