Update(blocks): python新增一些pandas图形块,多语言将在稳定后进行
新增pandas API如下: 1. 值排序: sort_values() 2. 获取前 / 后n行数据: head() / tail() 3. 根据所给条件筛选数据 4. 通过给定标签分组: groupby() 5. 常用聚合函数
This commit is contained in:
@@ -644,4 +644,41 @@ export const py_sum = function (block, generator) {
|
||||
var array = generator.valueToCode(block, 'ARRAY', generator.ORDER_ATOMIC) || '[]';
|
||||
var code = 'sum(' + array + ')';
|
||||
return [code, generator.ORDER_ATOMIC];
|
||||
}
|
||||
|
||||
export const dataframe_sort_values = function (block, generator) {
|
||||
const dict = generator.valueToCode(block, 'DICT', generator.ORDER_ATOMIC) || 'df';
|
||||
const key = generator.valueToCode(block, 'KEY', generator.ORDER_ATOMIC) || '\'tag\'';
|
||||
const ascending = block.getFieldValue('AS_CENDING');
|
||||
const code = `${dict}.sort_values(by=${key}, ascending=${ascending})`;
|
||||
return [code, generator.ORDER_ATOMIC];
|
||||
}
|
||||
|
||||
export const dataframe_head_tail = function (block, generator) {
|
||||
const dict = generator.valueToCode(block, 'DICT', generator.ORDER_ATOMIC) || 'df';
|
||||
const lines = generator.valueToCode(block, 'LINES', generator.ORDER_ATOMIC) || '1';
|
||||
const type = block.getFieldValue('TYPE');
|
||||
const code = `${dict}.${type}(${lines})`;
|
||||
return [code, generator.ORDER_ATOMIC];
|
||||
}
|
||||
|
||||
export const dataframe_select = function (block, generator) {
|
||||
const dict = generator.valueToCode(block, 'DICT', generator.ORDER_ATOMIC) || 'df';
|
||||
const key = generator.valueToCode(block, 'KEY', generator.ORDER_ATOMIC) || 'df[\'tag\'] > 1';
|
||||
const code = `${dict}[${key}]`;
|
||||
return [code, generator.ORDER_ATOMIC];
|
||||
}
|
||||
|
||||
export const dataframe_groupby = function (block, generator) {
|
||||
const dict = generator.valueToCode(block, 'DICT', generator.ORDER_ATOMIC) || 'df';
|
||||
const key = generator.valueToCode(block, 'KEY', generator.ORDER_ATOMIC) || '\'tag\'';
|
||||
const code = `${dict}.groupby(by=${key})`;
|
||||
return [code, generator.ORDER_ATOMIC];
|
||||
}
|
||||
|
||||
export const dataframe_aggregate_func = function (block, generator) {
|
||||
const dict = generator.valueToCode(block, 'DICT', generator.ORDER_ATOMIC) || 'df';
|
||||
const type = block.getFieldValue('TYPE');
|
||||
const code = `${dict}.${type}()`;
|
||||
return [code, generator.ORDER_ATOMIC];
|
||||
}
|
||||
Reference in New Issue
Block a user