經濟愈加達, 債權債務關係越緊密。常常會有好多人或者好多家企業之間有三角債的關係,那麼如何快速準確的繪製出三角債的關係圖呢,下面即將爲你揭曉。node
1、數據介紹函數
本次引用的是浙江省法院2016年的訴訟數據,將該數據文件zx1129.db上傳到FEA,其中的ajxx表的內容以下所示:.net
2、數據探索對象
咱們須要獲得的是與分析對象有三角債務關係的數據,該數據可由無向圖閉環分析獲得。而後將三角債務數據和債務人節點自定義關係圖函數處理,便可獲得用於繪製三角債務關係圖的數據格式。get
3、數據分析數據分析
一、加載數據,並將數據通過修改字段名、節選指定字段、增長特定字段,使之符合無向圖模型處理的數據格式要求。it
sjz1 = @udf df0@sys by RS.load_s3 with (zx1129.db,select * from ajxx)io
rename sjz1 as ("申請執行人":"source","被申請執行人":"target")lambda
sjz2 = loc sjz1 by (source,target)select
sjz2 = add value by (1)
二、對數據進行無向圖模型處理,而後對指定的分析對象作無向圖閉環分析,此處咱們以「浙江鼎豐鋁業有限公司」爲例。
G = @udf sjz2 by GL.df2G
sjz3 = @udf G by GL.cycle_B with (浙江鼎豐鋁業有限公司)
結果數據以下:
三、將上述數據中的全部列合併爲一列,並去掉重複數據
sjz4 = @udf sjz3 by udf0.df_2one
sjz41 = distinct sjz4 by one
四、分別按照申請執行人和被申請執行人進行右鏈接操做,匹配出符合本次分析對象所在無向圖閉環節點數據的訴訟信息,而後合併表數據,去掉重複項。
a = @udf sjz2,sjz41 by udf0.df_rjoin with (source,one)
a = @udf a by udf0.df_drop_col with one
b = @udf sjz2,sjz41 by udf0.df_rjoin with (target,one)
b = @udf b by udf0.df_drop_col with one
ss = union a,b
ss = distinct a by (source,target)
ss = @udfss by udf0.df_dropna
五、分離出本次分析對象所在無向圖閉環節點,增長節點類別和節點大小字段。
node = loc ss by (source,target)
node = @udf node by udf0.df_2one
node = distinct node by (one)
node = add category by (1)
node = add size by (20)
node = @udf node by udf0.df_row_lambda with (x:2 if x[0]==u"@name" else x[1])
node = loc node by (one,lambda1,size)
rename node as ("one":"id","lambda1":"category")
六、將節點數據和三角債數據作自定義關係圖函數的處理,獲得符合關係圖繪製格式的數據。
ss_v = @udf node,ss by VL.rgl2
store ss_v to ssdb by ssdb0 with ss_v
七、通過上述對數據的分析處理,就能夠對獲得的最終數據繪製三角債的關係圖(力導向圖),能夠一目瞭然的看到與該公司發生債務關聯的全部單位和我的,以下所示: