Please be nice - I'm not a proper programmer, I'm a scientist and I've read as many docs on this as I can find (they're a bit sparse).

I'm trying to convert this pandas code into dash because my input file is ~0.5TB with gz and it loads too slowly in native pandas. I have a 3 TB machine, btw.

This is an example of what I'm doing with pandas:

```
df = pd.DataFrame([['chr1',33329,17,'''33)'6'4?1&AB=?+..''','''X%&=E&!%,0("&"Y&!'''],
                    ['chr1',33330,15,'''6+'/7=1@><C1*'*''','''X%=E!%,("&"Y&&!'''],
                    ['chr1',33331,13,'''2*3A@/9@CC3--''','''X%E!%,("&"Y&!'''],
                    ['chr1',33332,1,'''4**(,:3)+7-@<(0-''','''X%&E&!%,0("&"Y&!'''],
                    ['chr1',33333,2,'''66(/C=*42A:.&*''','''X%=&!%0("&"&&!''']],
                 columns = ['chrom','pos','depth','phred','map'])

df.loc[:,'phred'] = [(sum(map(ord,i))-len(i)*33)/len(i) for i in df.loc[:,"phred"]]
df.loc[:,"map"] = [(sum(map(ord,i)))/len(i) for i in df.loc[:,"map"]]
df = df.astype({'phred': 'int32', 'map': 'int32'})
df.query('(depth < 10) | (phred < 7) | (map < 10)', inplace=True)
for chrom, df_tmp in df.groupby('chrom'):
    df_end = df_tmp[~((df_tmp.pos.shift(0) == df_tmp.pos.shift(-1)-1))]
    df_start = df_tmp[~((df_tmp.pos.shift(0) == df_tmp.pos.shift(+1)+1))]
    for start, end in zip(df_start.pos, df_end.pos):
        print (start, end)

```

Gives

```
33332 33333

```

This works (to find regions of a cancer genome with no data) and it's optimised as much as I know how.

I load the real thing like:

```
df = pd.read_csv(
    '/Users/liamm/Downloads/test_head33333.tsv.gz',
     sep='\t',
    header=None,
    index_col=None,
    usecols=[0,1,3,5,6],
    names = ['chrom','pos','depth','phred','map']
)

```

and I can do the same with Dask (way faster!):

```
df = dd.read_csv(
    '/Users/liamm/Downloads/test_head33333.tsv.gz',
     sep='\t',
    header=None,
    usecols=[0,1,3,5,6],
    compression='gzip',
    blocksize=None,
    names = ['chrom','pos','depth','phred','map']
)

```

but i'm stuck here:

```
ff=[(sum(map(ord,i))-len(i)*33)/len(i) for i in df.loc[:,"phred"]]
df['phred'] = ff

```

Error: Column assignment doesn't support type list

Question - is this sort of thing possible? If so are there good tutes somewhere? I need to convert the whole block of pandas code above.

Thanks in advance!