我有一个带有六列的大熊猫数据框,我知道每列中都有一些异常值.所以我有这两行代码,它们正在做我想做的事情.但它只从数据帧的一列中删除异常值.那么如果我想从每一列中删除异常值怎么办?
df = pd.DataFrame({'stlines':np.random.normal(size=533)})
df = df[np.abs(df.stlines-df.stlines.mean()) <= (2*df.stlines.std())]
Run Code Online (Sandbox Code Playgroud)
这样做的优雅方式是什么?
我从 git 得到了一些代码,我试图理解它,这是其中的一部分,我不明白这段代码的第二行
G = nx.Graph(network_map) # Graph for the whole network
components = list(nx.connected_components(G))
Run Code Online (Sandbox Code Playgroud)
这个函数有什么作用connected_components呢?我浏览了文档但无法正确理解它。
我有一个数据框df,它看起来像这样:
id Type agent_id created_at
0 44525 Stunning 6 bedroom villa in New Delhi 184 2018-03-09
1 44859 Villa for sale in Amritsar 182 2017-02-19
2 45465 House in Faridabad 154 2017-04-17
3 50685 5 Hectre land near New Delhi 113 2017-09-01
4 130728 Duplex in Mumbai 157 2017-02-07
5 130856 Large plot with fantastic views in Mumbai 137 2018-01-16
6 130857 Modern Design Penthouse in Bangalore 199 2017-03-24
Run Code Online (Sandbox Code Playgroud)
我有这个表格数据,我试图通过从列中提取关键字来清理这些数据,从而创建一个包含新列的新数据框.
Apartment = ['apartment', 'penthouse', 'duplex']
House = ['house', …Run Code Online (Sandbox Code Playgroud) 我有一个数据框df:
A B C date
O 4 5 5 2019-06-2
1 3 5 2 2019-06-2
2 3 2 1 2019-06-2
3 4 4 3 2019-06-3
4 5 4 6 2019-06-3
5 2 3 7 2019-06-3
Run Code Online (Sandbox Code Playgroud)
现在我可以使用以下代码对一列进行分组:
df.groupby('date')['A'].apply(list)
A date
O [4,3,3] 2019-06-2
1 [4,5,2] 2019-06-3
Run Code Online (Sandbox Code Playgroud)
但如果想按多列分组怎么办?我已经尝试过类似的方法,但它似乎不起作用:
df.groupby('date')[['A','B','C']].apply(list)
Run Code Online (Sandbox Code Playgroud)
最终的 DataFrame 应如下所示:
A B C date
O [4,3,3] [5,5,2] [5,2,1] 2019-06-2
1 [4,5,2] [4,4,3] [3,6,7] 2019-06-3
Run Code Online (Sandbox Code Playgroud)