我想随机地随机播放文本文件的行并创建一个新文件.该文件可能有几千行.
我怎样才能做到这一点与cat,awk,cut等?
我有一个列表,我用随机的shuffle函数(random.shuffle)
但是,Python参考说明:
注意,即使相当小
len(x),x的排列总数也大于大多数随机数生成器的周期; 这意味着永远不会产生长序列的大多数排列.
现在,我想知道这个"相当小的len(x)"意味着什么.100,1000,10000,......
我想在Linux中随机播放一个包含数百万行字符串的大文件.我试过'sort -R'但它很慢(16M大文件需要50分钟).是否有更快的实用程序,我可以使用它代替它?
我无法使用--random-sort在Fedora Linux系统上使用sort命令.
一些上下文信息:
$ cat /etc/fedora-release
Fedora release 7 (Moonshine)
$ which sort
/bin/sort
$ man sort | grep -A 2 '\-R'
-R, --random-sort
sort by random hash of keys
$ man sort | grep -A 3 '\-R'
-R, --random-sort
sort by random hash of keys
--random-source=FILE
Run Code Online (Sandbox Code Playgroud)
而且测试:
$ echo -e "2\n1\n3\n5\n4"
2
1
3
5
4
$ echo -e "2\n1\n3\n5\n4" | sort -r # Sort in reverse order
5
4
3
2
1
$ echo -e "2\n1\n3\n5\n4" | sort …Run Code Online (Sandbox Code Playgroud) 我从http://bash.cyberciti.biz/guide/While_loop获取此代码,用于从文件中逐行读取
file=/etc/resolv.conf
while IFS= read -r line
do
# echo line is stored in $line
echo $line
done < "$file"
Run Code Online (Sandbox Code Playgroud)
我不理解的部分是IFS=它对这个功能的贡献.有人可以向我解释一下吗?谢谢.
我有一个3GB的csv文件.它太大而无法加载到我的计算机上的R中.相反,我想在不加载完整数据集的情况下加载行的样本(比如1000).
这可能吗?我似乎无法在任何地方找到答案.
我想做sort(1)的逆:在stl中将stdin的每一行随机化为stdout.