2024-06-06 16:45:49 发布
网友
我在Python中有一个dataframe,它由1行100列组成。看起来像这样:
_id d.0.id d.0.name d.0.dep.id d.0.dep.name d.0.dep.1.id d.0.dep.1.name .... A B C D E F G
我需要按以下方式将数据帧转换为csv文件:
新的csv文件应该有5列。前三列应该包含整个文件中相同的条目。每行中只有最后两列更改。请告诉我如何使用Pandas在Python中执行这种类型的数据帧操作。在
获取包含以下5列的新数据帧:
df1 = df.iloc[:,0:5] or df1=df[[_id,d.0.id,d.0.name,d.dep.id,d.dep.name]]
将新数据帧另存为csv:
扩展问题的解决方案
将单行转换为ndarray
import pandas as pd df = pd.read_csv('df_info.txt', sep=",", header=0) vallist=df.as_matrix()[0]
输出:
array(['NBA', 'Mens', 'Sports', 'LAL', 'Lakers', 'BOS', 'Celtics', 'SAS', 'Spurs', 'OKC', 'Thunder'], dtype=object)
创建Dict来存储值
dict={} n=4 varlist1=[] for i in range(len(vallist)): if(n<=9): dict[i]={} print(vallist[n],vallist[n+1]) dict[i]['col1']=vallist[0] dict[i]['col2']=vallist[1] dict[i]['col3']=vallist[2] dict[i]['col4']=vallist[n] dict[i]['col5']=vallist[n+1] n+=2
将dict导入Dataframe
df2=pd.DataFrame.from_dict(dict) df2.transpose()
最终结果:
col1 col2 col3 col4 col5 0 NBA Mens Sports Lakers BOS 1 NBA Mens Sports Celtics SAS 2 NBA Mens Sports Spurs OKC
获取包含以下5列的新数据帧:
将新数据帧另存为csv:
^{pr2}$扩展问题的解决方案
将单行转换为ndarray
输出:
创建Dict来存储值
将dict导入Dataframe
最终结果:
相关问题 更多 >
编程相关推荐