FenLoad module

FenLoad is a module that regroup functions that load saved .json files that are generated using FenicsATL.FenStruct, and fuctions that split Fast/SLow results in testTables formated in multiple columns

Functions

Read FENICS data

FenLoad.FenicsData_read

func FenLoad.FenicsData_read(path) source

Read the saved json file of FENICS data, and keeps it formated in multicolumns format using tuples. Compatible with FENICS1 and FENICS2 versions

parameters:

path (string) :

Path to the FENICS json file generated by FenicsATL.FenStruct.

Returns:

FenDataFrame (pandas.DataFrame) :

Multilevel columns dataframe of FENICS boards.

Example :

   FENICS = FATL.FenicsData_read('/AtlasDisk/home2/sisaid/data/FENICS_data.json')

Resulting DataFrame

BoardFastResultSlowResult
nameversionidcodeburnings...NoiseLGNoiseLGIG1NoiseLGIG2NoiseLGIG6...Gain0Gain1Gain2Gain3Gain4Gain5

   

Filter FENICS data by ID

FenLoad.FenicsVers_filter

func FenLoad.FenicsVers_filter(data,*args,index = True) source

Filter the dataframe with a given list of FENICS IDs to filter

parameters :

data (pandas.DataFrame) :

pandas.dataframe of FENICS data with Board main column.

*args (array) :

array/list of IDs to filter.

index (bool,optional) , default=True :

Keep the original dataframe indexing.

returns :

DataFrame (pandas.DataFrame):

Filtred multilevel columns dataframe keeping original index if index = default.

Examples :

Two line :

   filter_id_slow = [15,14,13,12,10,9,8,6,5,4]
   FENICS = FATL.FenicsData_read('/AtlasDisk/home2/sisaid/data/FENICS_data.json')
   FENICS = FATL.FenicsVers_filter(FENICS,filter_id_slow)

One line :

   FENICS = FATL.FenicsVers_filter(FATL.FenicsData_read('/AtlasDisk/home2/sisaid/data/FENICS_data.json'),filter_id_slow)

   

Get FENICS test frame data

FenLoad.FenicsTestTable

func FenLoad.FenicsTestTable(data,mode,resetIndex = False): source

Separate the testing table from the FENICS parent dataframe, and set it to a 2 level multicolumn format for FENICS Fast channel, and a 3 level multicolumn for FENICS Slow channel.

parameters :

data (pandas.dataframe) :

dataframe of FENICS data.

mode (string) :

test channel 'Fast' or 'Slow'.

resetIndex (bool,optional), default=False :

Keep the original dataframe indexing.

Returns :

testTable (pandas.DataFrame) :

Multilevel columns testTable.

Example :

   FENICS = FATL.FenicsData_read('/AtlasDisk/home2/sisaid/data/FENICS_data.json')
   Fast = FATL.FenicsTestTable(FENICS,'fast')
   Slow = FATL.FenicsTestTable(FENICS,'slow')

Fast channel:

GainLinearHGcor...NoiseLGIG6
GainRatioLCGainRatioSCSlopeAmpSlopeIntegLowGoodLinLowGoodNoisePedLowGoodNoiseInteg...MuSigmaMeanStdDev
Slow channel:

Gain0...Gain5
Linearity...NoisePhys...Linearity...NoisePhys
SlopeLinConstLinDACforPed......MuSigmaMeanStdDev...SlopeLinConstLinDacforPedLowGoodNoise......MuSigmaMeanStdDev