在 openrefine 中对单元格内的年份列表进行排序
Sort a list of years within a cell in openrefine
如标题所示,我有一个包含期刊的数据集。对于每个期刊,我都有一个包含这些混合日期的单元格:
1690 -- 1686 -- 1716 -- 1726 -- 1683 -- 1730 -- 1684 -- 1715 -- 1693 -- 1712 -- 1695 -- 1688 -- 1724 -- 1685 -- 1692 -- 1707 -- 1702 -- 1731 -- 1710 -- 1709 -- 1704 -- 1696 -- 1687 -- 1699 -- 1708 -- 1703 -- 1691 -- 1697 -- 1720 -- 1694 -- 1714 -- 1729 - - 1721 -- 1713 -- 1725 -- 1705 -- 1727 -- 1711 -- 1719 -- 1728 -- 1723 -- 1717 -- 1718 -- 1700 -- 1689 -- 1722 -- 1701 -- 1698 -- 1706
如何对日期进行排序并只取第一个和最后一个发布日期?
提前致谢
我不太确定你需要什么,但如果我没看错,那么应该这样做:
value.split(' -- ').sort()[0]
value.split(' -- ').sort()[-1]
第一个给你最低的价值,第二个给你最高的价值。对于此数据,您将获得 1683 和 1731。
您可以使用 "Add column based on this column" 两次来获取不同单元格中的开始和结束年份,或者您可以再次使用“+”连接这些值,如下所示:
value.split(' -- ').sort()[0] + "-" + value.split(' -- ').sort()[-1]
如标题所示,我有一个包含期刊的数据集。对于每个期刊,我都有一个包含这些混合日期的单元格:
1690 -- 1686 -- 1716 -- 1726 -- 1683 -- 1730 -- 1684 -- 1715 -- 1693 -- 1712 -- 1695 -- 1688 -- 1724 -- 1685 -- 1692 -- 1707 -- 1702 -- 1731 -- 1710 -- 1709 -- 1704 -- 1696 -- 1687 -- 1699 -- 1708 -- 1703 -- 1691 -- 1697 -- 1720 -- 1694 -- 1714 -- 1729 - - 1721 -- 1713 -- 1725 -- 1705 -- 1727 -- 1711 -- 1719 -- 1728 -- 1723 -- 1717 -- 1718 -- 1700 -- 1689 -- 1722 -- 1701 -- 1698 -- 1706
如何对日期进行排序并只取第一个和最后一个发布日期?
提前致谢
我不太确定你需要什么,但如果我没看错,那么应该这样做:
value.split(' -- ').sort()[0]
value.split(' -- ').sort()[-1]
第一个给你最低的价值,第二个给你最高的价值。对于此数据,您将获得 1683 和 1731。
您可以使用 "Add column based on this column" 两次来获取不同单元格中的开始和结束年份,或者您可以再次使用“+”连接这些值,如下所示:
value.split(' -- ').sort()[0] + "-" + value.split(' -- ').sort()[-1]