我需要将 networkx Edge 的 OutEdgeView 数据隐藏到列表中。
我记得graph.edges(data=True)用来返回一个列表,例如[u,v,{data}]. 但现在网络返回了一些东西OutEdgeView([u,v,{data}])。我怎样才能得到原始的列表?
谢谢
我有一张桌子 df
a b c
1 x y [x]
2 x z [c,d]
3 x t [e,f,g]
Run Code Online (Sandbox Code Playgroud)
只是想知道如何使用 c 列的长度选择行
如
df.loc[len(df.c) >1]
Run Code Online (Sandbox Code Playgroud)
我知道这是不对的......什么应该是正确的?
例如,我有一张桌子
一种
id price sum
1 2 0
1 6 0
1 4 0
2 2 0
2 10 0
2 1 0
2 5 0
3 1 0
3 5 0
Run Code Online (Sandbox Code Playgroud)
我想要的是(最后一行sum应该是price一组的总和)
id price sum
1 2 0
1 6 0
1 4 12
2 2 0
2 10 0
2 1 0
2 5 18
3 1 0
3 5 6
Run Code Online (Sandbox Code Playgroud)
我能做的是找出总和使用
A['price'].groupby(A['id']).transform('sum')
Run Code Online (Sandbox Code Playgroud)
但是我不知道如何将它分配给sum列(最后一行)。
谢谢
给定数据框:
dfd = pd.DataFrame({'A': [1, 1, 2,2,3,3],
'B': [4, 5, 6,7,8,9],
'C':['a','b','c','c','d','e']
})
Run Code Online (Sandbox Code Playgroud)
我可以通过使用找到每个A组的最后一个C值
dfd.groupby('A').last()['C']
Run Code Online (Sandbox Code Playgroud)
但是,我想将C值更新为np.nan。我不知道该怎么做。方法如:
def replace(df):
df['C']=np.nan
return replace
dfd.groupby('A').last().apply(lambda dfd: replace(dfd))
Run Code Online (Sandbox Code Playgroud)
不起作用。
我想要这样的结果:
dfd_result= pd.DataFrame({'A': [1, 1, 2,2,3,3],
'B': [4, 5, 6,7,8,9],
'C':['a',np.nan,'c',np.nan,'d',np.nan]
})
Run Code Online (Sandbox Code Playgroud) 我有一个数据框,其中包含列中的列表项.
示例:df:
column1, column2, column3
1 'c' ['d']
2 'x' []
3 'foo' ['car']
Run Code Online (Sandbox Code Playgroud)
所以我想将另一个项目附加到column3中
结果应该是这样的
column1, column2, column3
1 'c' ['d','t']
2 'x' ['t']
3 'foo' ['car','t']
Run Code Online (Sandbox Code Playgroud)
目前我使用这样的方法
df['column3']=df['column3'].apply(lambda x: x.append('t'))
Run Code Online (Sandbox Code Playgroud)
但是第3列成了
column1, column2, column3
1 'c' none
2 'x' none
3 'foo' none
Run Code Online (Sandbox Code Playgroud)
想知道如何使用应用功能