小编red*_*bia的帖子

附加两个具有相同列,不同顺序的数据帧

我有两个pandas数据帧.

noclickDF = DataFrame([[0,123,321],[0,1543,432]], columns=['click', 'id','location'])
clickDF = DataFrame([[1,123,421],[1,1543,436]], columns=['click', 'location','id'])
Run Code Online (Sandbox Code Playgroud)

我只是想加入,以便最终的DF看起来像:

click  |  id   |   location
0         123        321
0         1543       432
1         421        123
1         436       1543
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,两个原始DF的列名相同,但顺序不同.列中也没有连接.

python join append pandas

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

NLTK - 多标记分类

我正在使用NLTK来对文档进行分类 - 每个文档有1个标签,有10种类型的文档.

对于文本提取,我正在清理文本(标点删除,html标记删除,小写),删除nltk.corpus.stopwords,以及我自己的停用词集合.

对于我的文档功能,我查看所有50k文档,并按频率(frequency_words)收集前2k个单词,然后为每个文档识别文档中哪些单词也在全局frequency_words中.

然后我将每个文档作为hashmap传递{word: boolean}到nltk.NaiveBayesClassifier(...)中,我对文档总数的测试训练比率为20:80.

我遇到的问题:

  1. 这是NLTK的分类器,适用于多标记数据吗?- 我所看到的所有例子都更多地是关于2级分类,例如某些事物被宣告为正面还是负面.
  2. 这些文件应该具备一套关键技能 - 不幸的是,我没有这些技能所在的语料库.所以我采取了理解的方法,每个文件的字数不是一个好的文件提取器 - 这是正确的吗?每份文件都是由个人撰写的,因此我需要为文件中的个别变化留出让路.我知道SkLearn MBNaiveBayes处理字数.
  3. 是否有我应该使用的替代库,或者此算法的变体?

谢谢!

python nlp nltk document-classification

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

通过id列表过滤pandas数据帧

我有一个pandas数据帧,其中包含用户ID'subscriber_id'列表以及其他一些信息.

我想只选择不在给定列表A中的订阅者.

因此,如果我们的数据框包含订阅者的信息[1,2,3,4,5]而我的排除列表是[2,4,5],我现在应该得到一个包含[1,3]信息的数据帧

我尝试过使用如下掩码:

temp = df.mask(lambda x: x['subscriber_id'] not in subscribers)

但没有运气!

我确信这not in是有效的Python语法,因为我在列表上测试它如下:

c = [1,2,3,4,5]
if 5 not in c:
    print 'YAY'
>> YAY
Run Code Online (Sandbox Code Playgroud)

过滤数据框的任何建议或替代方法?

python dataframe pandas

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

在numpy矩阵中找到给定条件的指数

所以我有一个numpy矩阵,例如:

[[1,2,3],
[0,59,2],
[54,4,2]]
Run Code Online (Sandbox Code Playgroud)

现在我想找到索引,其中所有值都大于50(不是最大值).这应该给我[1,1],[2,0].

除了迭代,检查每个值并跟踪符合条件的值的索引然后返回这些对 - 你如何有效地做到这一点?

python numpy

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

字典键上的正则表达式匹配

假设我们有一个字典: {'Hello World': value1, 'Testing': value2}

现在我们需要在字典中查找一个词。密钥 K 需要与“Hello World”或“Testing”完全匹配才能使用。

所以让我们的text = 'hello world'我们仍然希望这个返回value1

那么我们如何处理文本与键的正则表达式匹配呢?理想情况下,我们不想遍历字典

编辑:间距方面只是一个简单的例子。文本可能会发生变化,是我们想要匹配的数字和字母的组合。我们通常会使用正则表达式模式

python regex dictionary key normalization

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

将熊猫DF复制N次

所以现在,如果我增加一个列表,即“ x = [1,2,3]* 2 I get x as [1,2,3,1,2,3]但是,这不适用于熊猫”。

因此,如果要复制PANDAS DF,则必须将一列设为列表并包含多个:

col_x_duplicates =  list(df['col_x'])*N

new_df = DataFrame(col_x_duplicates, columns=['col_x'])
Run Code Online (Sandbox Code Playgroud)

然后对原始数据进行联接:

pd.merge(new_df, df, on='col_x', how='left')
Run Code Online (Sandbox Code Playgroud)

现在这将大熊猫DF复制了N次,有没有更简单的方法?还是更快的方法?

python list pandas

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

iPython笔记本未加载

因此,我的iPython笔记本出现在浏览器(chrome)中,当我打开特定笔记本时,将打开一个新标签。但是,该工作无法加载!该页面也冻结。这是iPython问题还是文件有问题?昨天上班。我已经重新盯上comp等,但是没有运气

更新:只是尝试重命名笔记本以重新打开但没有运气

更新2:现在已经出现了-但不能执行任何操作!iPython只是极慢而已...

python ipython-notebook

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

快速熊猫过滤

如果名称列条目在给定列表中有一个项目,我想过滤一个pandas数据帧.

这里我们有一个DataFrame

x = DataFrame(
    [['sam', 328], ['ruby', 3213], ['jon', 121]], 
    columns=['name', 'score'])
Run Code Online (Sandbox Code Playgroud)

现在假设我们有一个列表,['sam', 'ruby']我们想要查找名称在列表中的所有行,然后对得分求和.

我的解决方案如下:

total = 0
names = ['sam', 'ruby']
for name in names:
     identified = x[x['name'] == name]
     total = total + sum(identified['score'])
Run Code Online (Sandbox Code Playgroud)

但是,当数据帧变得非常大,并且名称列表也变得非常大时,一切都非常慢.

还有更快的选择吗?

谢谢

python pandas

4
推荐指数
3
解决办法
6870
查看次数

如何用pardas DataFrame替换样本?

我有一个大小为N的DataFrame.我需要用S样本对其进行采样,其中N <S替换.

def sampleDF(df, K): 
    return df.ix[np.random.randint(0, len(df), size=k)]
Run Code Online (Sandbox Code Playgroud)

我返回一个新的DF,但似乎一切都充满了NaN.我不确定发生了什么!

python dataframe pandas

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

响应式菱形网格

我有一些正方形(正方形旋转 45° 看起来像钻石),我想用它们来组成一个带有中央红色钻石的大钻石形状

我自己组织钻石时遇到问题,而且href似乎失败了。

  • 如何在规则网格中放置响应菱形

她是我的代码

body {
  background: black;
  color: #000000;
  font: 13px georgia, serif;
  line-height: 1.4;
  font-weight: lighter;
  text-rendering: optimizelegibility;
}
#diamond {
  width: 0;
  height: 0;
  border: 50px solid transparent;
  border-bottom-color: white;
  position: relative;
  top: -50px;
}
#diamond:after {
  content: '';
  position: absolute;
  left: -50px;
  top: 50px;
  width: 0;
  height: 0;
  border: 50px solid transparent;
  border-top-color: white;
}
#diamond_red {
  width: 0;
  height: 0;
  border: 50px solid transparent;
  border-bottom-color: …
Run Code Online (Sandbox Code Playgroud)

html css responsive-design css-shapes

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