比如我有三个 txt 文件,
a.txt 和 b.txt 和 c.txt
其内容字段一致,内容如下:
time,tmp,water,light
2019-09-03 03:23:09,28,28,8
2019-09-03 03:23:10,29,29,9
2019-09-03 03:23:11,30,30,10
2019-09-03 03:23:12,31,31,11
2019-09-03 03:23:13,32,32,12
我现在需要合并这三个文件的数据到一起,也就是把 b.txt 和 c.txt 的文件追加到 a.txt 中去, 请教问题如下:
1.怎么样把三个文件的内容合并成一个新文件呢?
2.如果前端需要的是我合并这三个文件之后的内容,我还需要先合并数据成一个文件,然后再读数据返回给前端吗?
还是直接可以把合并之后的数据不保存直接返回给前端?
1
AX5N 2019-09-12 05:53:51 +08:00 1
你们是从哪里找的教材,为什么一定要用 pandas,我都不知道这些和 pandas 有啥联系。
|
2
greatlisten 2019-09-12 06:50:24 +08:00 via Android
DataFrame
|
3
secsilm 2019-09-12 08:40:47 +08:00 via Android
这根本上是 csv 文件,用 pandas 读进去成 dataframe 然后合并 dataframe,再导出就行了
|
4
aiver 2019-09-12 08:50:21 +08:00
用 python 直接读写三个文件合并不就好了,根本都用不上 pandas
|
5
kayseen OP |
6
goodname 2019-09-12 09:17:03 +08:00 2
楼主我支持你,上面回复的人太没有服务意识了,别人不谷歌来 V2 问是看的起你们,你们竟然不直接把代码写好双手奉上
|
7
ipoh 2019-09-12 09:30:26 +08:00
这种问题可以用百度或者去 CSDN 发帖,那边的人热情很多
|
8
way2create 2019-09-12 09:33:43 +08:00
题目都不看 让我想到了做试卷
|
9
zyxfsky 2019-09-12 09:37:48 +08:00
弱弱的说一句,合并这种文件,Python 都不用吧,shell 一行命令全部搞定了
|
11
CEBBCAT 2019-09-12 09:53:06 +08:00
先说第一个合并的问题哈,你看这也就是三个文本文件而已,去掉表头直接追加就可以了。但要小心别搞错换行符,一般首尾加一个换行符既不会触发 bug 也稳妥多了。
第二个,你看我这两天正在学 Go,GoPL 中就提到一个 Gif 直接返回给 HTTP 输出流的例子,而且 respones 头也是正确的,有点跑题了,我想说的是那个例子里生成了 Gif 就直接把 Gif 写到 io 里了,没有保存。 楼主不能接受楼上的建议可能还是对于文件结构、存储结构、IO 工作原理不熟悉,我也不是啥啥都懂,自学到现在(大四),恰巧碰到明白的点而已。 我该说的说完了,现在问点我想知道的:楼主是不是转行培训了一下然后赶鸭子上架就职的? |
12
CEBBCAT 2019-09-12 09:54:33 +08:00 3
另外楼主「而且 pandas 使用 csv 操作比 python 的 open 读写文件效率高吧」非常有节目效果,点个赞哈哈哈哈😂
|
14
Vegetable 2019-09-12 10:17:13 +08:00
cat b.txt c.txt|grep -v time >> a.txt
|
15
DMW 2019-09-12 10:19:41 +08:00
建议用 Shell 命令,更加简单快捷
|
17
silentstorm 2019-09-12 10:30:21 +08:00 via Android
windows 下 copy /b 就能解决
|
18
idcspy 2019-09-12 10:50:33 +08:00
借楼问个相关基础问题,如果有个每日更新的 11m 左右 txt 文件,大部分内容相同,是个网站排名数据,要把他的排名变化展现出来用什么做好点,谢谢。
|
19
kayseen OP @idcspy
问一下,是把固定天数(比如三天或者四天的)排名变化展示吗? 或者说是动态展示(比如某一时刻的固定天数的变化图), 如果是做网站前后端分离把数据给到前端,前端来绘图吧, 如果是后端绘图的话, 刚接触了一点 matplotlib,不知道行不行, 看楼下解答... |
20
shenxgan 2019-09-12 11:21:57 +08:00 1
|
21
XuanFei990 2019-09-12 11:52:41 +08:00
windows cmd
copy a.txt + b.txt + c.txt temp.txt |
23
abucus 2019-09-12 22:46:23 +08:00
楼主,在合并 txt 这个方面,用 pandas concat 并不会比 python open 更快,当然在小文件的时候这个差别其实看不大出来,文件越大差距越明显,pandas 的优势主要还是数据分析。
用 open 顺序打开读取(跳过后面文件的 header )就可以了。 如果要把合并的结果返回给前端,不需要真正生成一个合并的文件,直接把 output 写到输出流就好, 一个相近的例子参看 https://flask.palletsprojects.com/en/1.1.x/patterns/streaming/ 如果文件很大,再加一层 zip 比较好。 |
24
shm7 2019-09-13 09:16:22 +08:00 via iPhone
你们这些讲复制 shell io 的,人家能不懂,人家分明是几百 GB 的大文件要用分批读写,还要考虑重复过滤的好不好。人家说 1+1 的计算要用超算,很显然这 1+1 比较特殊啊
|