所以假设我在pandas中有一个DataFrame,其中包含am行和n列.我们还要说我想颠倒列的顺序,可以使用以下代码完成:
df_reversed = df[df.columns[::-1]]
Run Code Online (Sandbox Code Playgroud)
这项行动的大O复杂性是什么?我假设这将取决于列数,但它还取决于行数?
我想创建一个由字符串组成的子数组数组,并为主数组中的每个子数组一次获取所有子数组值。
例如,我希望"str1" "str2"第一次打印出来,但实际上打印出来了"sub1"
#!/bin/bash
declare -a arr=(sub1 sub2)
declare -a sub1=("str1" "str2")
declare -a sub2=("str3" "str4")
for item in "${arr[@]}"; do
echo $item
done
Run Code Online (Sandbox Code Playgroud)
我想要这种行为,以便我以后可以调用脚本并传递"str1" "str2"给采用两个值的参数。然后我想再次运行脚本"str3" "str4"
我正在尝试按关键字对文档进行聚类。我正在使用以下代码来制作tdidf-matrix:
from sklearn.feature_extraction.text import TfidfVectorizer
tfidf_vectorizer = TfidfVectorizer(max_df=.8, max_features=1000,
min_df=0.07, stop_words='english',
use_idf=True, tokenizer=tokenize_and_stem,
ngram_range=(1,2))
tfidf_matrix = tfidf_vectorizer.fit_transform(documents)
Run Code Online (Sandbox Code Playgroud)
print(tfidf_matrix.shape)
返回(567, 209),这意味着有 567 个文档,每个文档都有 scikit-learn TdidfVectorizer 检测到的 209 个特征词的某种混合。
现在,我曾经terms = tfidf_vectorizer.get_feature_names()获得术语列表。跑步print(len(terms))给予209
其中许多单词对于任务来说是不必要的,并且它们会给聚类增加噪音。我手动浏览了该列表并提取了有意义的功能名称,从而生成了一个新terms列表。现在,跑步print(len(terms))可以给67
然而,运行tfidf_vectorizer.fit_transform(documents)仍然给出 的形状(567, 209),这意味着该fit_transform(documents)函数仍然使用 209 个术语的嘈杂列表,而不是手动选择的 67 个术语列表。
如何tfidf_vectorizer.fit_transform(documents)使用 67 个手动选择的术语列表来运行该函数?我在想,也许这需要我向我的机器上的 Scikit-Learn 包添加至少一项功能,对吗?
任何帮助是极大的赞赏。谢谢!
我有一些 HTML,我想使用 Python 通过 lxml 进行解析。页面上有许多元素,每个元素代表一张海报。我想获取每个发帖者的 ID,这样我就可以从发帖者的页面上抓取一条信息。目前海报的 id 存储在 id 属性中,因此我想使用 lxml 来获取该属性的值。
例如:
<div onclick="showDetail(9202)">
<div class="maincard narrower Poster" id="maincard_9202"> </div>
</div>
Run Code Online (Sandbox Code Playgroud)
我想从 id 属性中获取“maincard_9202”,这样我就可以使用正则表达式来获取 9202。从那里,我可以使用这个值直接访问海报的页面,因为我知道 url 重定向模式是这样的从
https://nips.cc/Conferences/2017/Schedule?type=海报(当前页面)至 https://nips.cc/Conferences/2017/Schedule?showEvent=9202(海报页面)
我试图使用以下代码:
from lxml import html
import requests
page = requests.get('https://nips.cc/Conferences/2017/Schedule?type=Poster')
tree = html.fromstring(page.content)
paper_numbers = tree.xpath('//div[@onclick]/id/')
Run Code Online (Sandbox Code Playgroud)
但这会返回一个空列表。
在这种情况下如何获取属性值?