在 pandas 中将逗号分隔的 CSV 转换为制表符分隔的 CSV

Converting Comma delimted CSV to Tab delimted CSV in pandas

我正在使用 python 我有一个 CSV 文件,其中的值由制表符分隔, 我对它的每一行应用了一个规则并创建了一个新的 csv 文件,生成的数据框是逗号分隔的,我希望这个新的 csv 也被制表符分隔。我该怎么做 ? 我知道使用 sep = '\t' 可以工作,但我应该在哪里应用它? 我应用了以下代码,但它也不起作用

df = pd.read_csv('data.csv', header=None)
df_norm= df.apply(lambda x:np.where(x>0,x/x.max(),np.where(x<0,-x/x.min(),x)),axis=1)
df_norm.to_csv("file.csv", sep="\t") 

这个你试过吗?

pd.read_csv('file.csv', sep='\t')

我发现了问题,规则将类型更改为“object”,因此我无法执行任何进一步的操作。我按照 Remove dtype at the end of numpy array,并将我的数据框转换为列表解决了问题。

df = pd.read_csv('data.csv', header=None)
df_norm= df.apply(lambda x:np.where(x>0,x/x.max(),np.where(x<0,-x/x.min(),x)),axis=1)
df_norm=df_norm.tolist()
df_norm = np.squeeze(np.asarray(df_norm))
np.savetxt('result.csv', df_norm, delimiter=",")