Question: Issues for pandas' DataFrame text output functions:

* to\_csv() does not support the 'formatters' parameter of to\_string(). I need different formats for each column.
* to\_string() does not support a separator.

What I do so far:

I generate a list of formatting strings in the new Python formatting format, so e.g. `['{8.1f}','{9.3f}',...,]`, and then do this hack:

```
f.write(', '.join(fmt).format(*data)+'\r\n')

```

Is there a way I can have pandas do some of this hacking for me or is that a feature request and I already did all the work? ;)

Answer: 
`np.savetxt` can do it (by supplying `fmt` argument, which can be a `list`), but that means the column names has to be written separately (`header` argument):

```
np.savetxt('temp.csv', df.values, fmt=['%8.1f','%9.3f','%8.1f','%9.3f','%8.1f'], 
           delimiter=',', header='     '+'     ,'.join(df.columns), comments='')

```
You can try this:

```
import pandas as pd

df = pd.DataFrame({
    'a': [-8.114445, 888.303217, 80],
    'b': ['d', 'gg5g', '9ghhhh'],
    'c': [14.34e+4,12.1e-1,1e-5],
    'd': [34,65373,-176576]}
)

df.to_string("temp.txt",
            formatters={
                "a": "{:6,.2f}".format,
                "b": "{:<}".format,
                "c": "{:9,.5e}".format,
                "d": "{:7d}".format
                }, index=False
            )

```

Content of "temp.txt":

```
     a      b           c       d
 -8.11      d 1.43400e+05      34
888.30   gg5g 1.21000e+00   65373
 80.00 9ghhhh 1.00000e-05 -176576

```