在 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=",")
我正在使用 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=",")